PR c++/47207
* decl2.c (decl_constant_var_p): A constexpr var needs an
initializer to be constant.
* semantics.c (cxx_eval_constant_expression): Complain about
constexpr var used in its own initializer.
* call.c (set_up_extended_ref_temp): Set
DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P too.
From-SVN: r170365
2011-02-21 Richard Guenther <rguenther@suse.de>
PR lto/47820
* lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
(lto_input_ts_block_tree_pointers): Hook a BLOCK into the
TUs context.
* lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
From-SVN: r170359
PR c++/46394
gcc/cp/
PR c++/46394
* pt.c (tsubst_pack_expansion): do not use
cp_tree_equal/same_type_p to detect an expansion of a parameter
pack.
gcc/testsuite/
PR c++/46394
* g++.dg/template/typedef38.C: New test.
From-SVN: r170341
2011-02-20 Richard Guenther <rguenther@suse.de>
PR lto/47822
* tree.c (free_lang_data_in_decl): Clean builtins from
the TU decl BLOCK_VARS.
From-SVN: r170339
2011-02-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/46818
* gfortran.dg/whole_file_30.f90 : New test.
* gfortran.dg/whole_file_31.f90 : New test.
From-SVN: r170338
2011-02-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45077
PR fortran/44945
* trans-types.c (gfc_get_derived_type): Remove code that looks
for decls in gsym and add call to gfc_get_module_backend_decl.
* trans.h : Add prototype for gfc_get_module_backend_decl.
* trans-decl.c (gfc_get_module_backend_decl): New function.
(gfc_get_symbol_decl): Call it.
2011-02-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45077
PR fortran/44945
* gfortran.dg/whole_file_28.f90 : New test.
* gfortran.dg/whole_file_29.f90 : New test.
From-SVN: r170337
2011-02-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/47567
* io/write_float.def (output_float): Adjust width for F0.d to
allow space for negative signs on zero.
From-SVN: r170318
2011-02-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/47348
* trans-array.c (get_array_ctor_all_strlen): Move up in file.
(get_array_ctor_var_strlen): Add block dummy and add call to
get_array_ctor_all_strlen instead of giving up on substrings.
Call gcc_unreachable for default case.
(get_array_ctor_strlen): Add extra argument to in call to
get_array_ctor_var_strlen.
2011-02-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/47348
* gfortran.dg/array_constructor_36.f90 : New test.
* gfortran.dg/bounds_check_10.f90 : Change dg-output message to
allow for comparison between different elements of the array
constructor at different levels of optimization.
From-SVN: r170317
PR target/47800
* config/i386/i386.md (peephole2 for shift and plus): Use
operands[1] original mode in the first insn.
* gcc.target/i386/pr47800.c: New test.
From-SVN: r170311
Don't crash converting an untyped complex constant to an integer type.
Don't crash on unsafe.Sizeof of erroneous type.
Don't crash on method expression of erroneous type.
Don't crash when sink and global var are initialized from type guard.
Don't crash initializing erroneous slice.
Don't crash on erroneous method of type seen before definition.
From-SVN: r170301