Fix PR c++/37093
gcc/cp/ChangeLog:
PR c++/37093
* pt.c (check_valid_ptrmem_cst_expr): New function.
(convert_nontype_argument): Use it to output an error for
illegal pointer to member expressions used as template arguments.
gcc/testsuite/ChangeLog:
PR c++/37093
* g++.dg/other/ptrmem10.C: New test.
* g++.dg/other/ptrmem11.C: Likewise.
From-SVN: r153822
libjava/:
PR bootstrap/38867
* configure.ac (expanded_prefix): New variable, set to the
default prefix if none was passed on the command line.
* configure: Regenerate.
From-SVN: r153820
gcc/
PR tree-optimization/41857
* tree-flow.h (rewrite_use_address): Add BASE_HINT argument.
* tree-ssa-loop-ivopts.c (rewrite_use_address): Pass base hint
to create_mem_ref.
* tree-ssa-address.c (move_hint_to_base): New function.
(most_expensive_mult_to_index): Add TYPE argument. Use mode and
address space associated with TYPE.
(addr_to_parts): Add TYPE and BASE_HINT arguments. Pass TYPE to
most_expensive_mult_to_index. Call move_hint_to_base.
(create_mem_ref): Add BASE_HINT argument. Pass BASE_HINT and
TYPE to addr_to_parts.
gcc/testsuite/
PR tree-optimization/41857
* gcc.target/spu/ea/pr41857.c: New file.
From-SVN: r153810
2009-11-02 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/41750
* tree-sra.c (analyze_modified_params): Loop over all
representatives of components of a parameter.
* testsuite/gcc.c-torture/execute/pr41750.c: New test.
From-SVN: r153809
PR tree-optimization/41841
* ipa-struct-reorg.c (build_data_structure): Don't attempt to look at
local variables of not yet materialized clones.
* gcc.dg/pr41841.c: New test.
From-SVN: r153807
PR debug/41893
* cfgexpand.c (expand_debug_expr): Don't attempt to create DECL_RTL
for a VOIDmode variable.
* gcc.dg/debug/pr41893-1.c: New test.
* gcc.dg/debug/pr41893-2.c: New file.
From-SVN: r153806
PR c++/41774
* c-pragma.c (visstack): Change into vector of ints rather than
enum symbol_visibility.
(push_visibility): Add kind argument, push default_visibility together
with kind.
(pop_visibility): Add kind argument, return true if successful, fail
if visibility stack is empty or if stack top is of different kind.
(handle_pragma_visibility): Don't check length of visstack, instead
call pop_visibility and issue diagnostics if it failed. Pass 0
as last argument to push_visibility and pop_visibility.
* c-pragma.h (push_visibility): Add kind argument.
(pop_visibility): Likewise. Return bool instead of void.
* name-lookup.c (handle_namespace_attrs): Pass 1 as last argument to
push_visibility.
* parser.c (cp_parser_namespace_definition): Pass 1 as argument to
pop_visibility.
* rtti.c (push_abi_namespace): Pass 2 as last argument to
push_visibility.
(pop_abi_namespace): Pass 2 as argument to pop_visibility.
* g++.dg/ext/visibility/namespace3.C: New test.
From-SVN: r153805
* tree.def (TARGET_MEM_REF): Update comment.
* alias.c (get_alias_set): Retrieve the original memory reference for
a TARGET_MEM_REF before proceeding.
From-SVN: r153796
2009-11-01 Tobias Burnus <burnus@net-b.de>
PR fortran/41872
* trans-decl.c (gfc_trans_deferred_vars): Do not nullify
autodeallocated allocatable scalars at the end of scope.
(gfc_generate_function_code): Fix indention.
* trans-expr.c (gfc_conv_procedure_call): For allocatable
scalars, fix calling by reference and autodeallocating
of intent out variables.
2009-11-01 Tobias Burnus <burnus@net-b.de>
PR fortran/41872
* gfortran.dg/allocatable_scalar_4.f90: New test.
From-SVN: r153795
2009-10-31 Toon Moene <toon@moene.org>
* ipa-inline.c (cgraph_decide_inlining):
Include reason for not inlining called-once functions in dump file.
From-SVN: r153776
2009-10-30 Rafael Avila de Espindola <espindola@google.com>
PR41871
* lto-plugin.c (claim_file_handler): Close files that we created.
From-SVN: r153764
2009-10-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41759
* include/bits/random.h: Tweak a bit the text of some static_asserts.
From-SVN: r153762
2009-10-30 Kai Tietz <kai.tietz@onevision.com>
* configure.ac: Disable target-winsup & co for
x86_64-*-mingw* and *-w64-mingw* targets.
* configure: Regenerated.
From-SVN: r153761
2009-10-30 Richard Guenther <rguenther@suse.de>
PR lto/41858
* lto-streamer.h (struct lto_file_decl_data): Remove fd member.
lto/
* lto.c (lto_file_read): Do not set file_data->fd.
(lto_read_section_data): Use a single-entry file-descriptor cache.
Do not check the result of xmalloc.
(free_section_data): Do not use file_data->fd.
(lto_read_all_file_options): Likewise.
From-SVN: r153758
* gcc-interface/utils.c (MAX_FIXED_MODE_SIZE): Delete.
(create_field_decl): Update description. In a packed record, round
the size up to a byte boundary only if the field's type has BLKmode.
* gcc-interface/gigi.h (create_field_decl): Update description.
From-SVN: r153755
2009-10-30 Emmanuel Briot <briot@adacore.com>
* make.adb (Start_Compile_If_Possible): Compute location of resulting
ALI file in this procedure instead of after the compilation itself,
since the current directory might have changed in between when using
-j<n>.
* osint.ads: Addded missing alignment clause.
* adaint.c, adaint.h, osint.adb (__gnat_reset_attributes,
__gnat_size_of_file_attributes): Rename reset_attributes and
size_of_file_attributes.
2009-10-30 Javier Miranda <miranda@adacore.com>
* sem_scil.adb (Adjust_SCIL_Node): Add missing management of sequences
of statements when searching for SCIL nodes.
2009-10-30 Tristan Gingold <gingold@adacore.com>
* gnatlink.adb, link.c: By default use shared libgcc on darwin.
From-SVN: r153749
2009-10-30 Emmanuel Briot <briot@adacore.com>
* make.adb, osint.adb (Add_Lib_Search_Dir): Do not add if dir is
already in the list.
This saves system calls when looking for ALI files
(Scan_Make_Args): The parameter to gnatmake's -D is now converted to an
absolute PATH (so that the above improvement properly occurs if both
-D<dir> and -aO<dir> are specified).
2009-10-30 Thomas Quinot <quinot@adacore.com>
* a-direct.adb: Minor reformatting
From-SVN: r153748
* make.adb, adaint.c, adaint.h, osint.adb, osint.ads, bcheck.adb
(*_attr): new subprograms.
(File_Length, File_Time_Stamp, Is_Writable_File): new subprograms
(Read_Library_Info_From_Full, Full_Library_Info_Name,
Full_Source_Name): Now benefit from a previous cache of the file
attributes, to further save on system calls.
(Smart_Find_File): now also cache the file attributes. This makes the
package File_Stamp_Hash_Table useless, and it was removed.
(Compile_Sources): create subprograms for the various steps of the main
loop, for readibility and to avoid sharing variables between the
various steps.
From-SVN: r153747