Commit Graph

113919 Commits

Author SHA1 Message Date
GCC Administrator
e2d049842c Daily bump.
From-SVN: r182183
2011-12-10 00:19:08 +00:00
Aldy Hernandez
67fafdd15a tree.c (build_common_builtin_nodes): Do not use TM_PURE attribute unless language has support for TM.
PR/51291
        * tree.c (build_common_builtin_nodes): Do not use TM_PURE
        attribute unless language has support for TM.
        * config/i386/i386.c (ix86_init_tm_builtins): Exit gracefully in
        the absence of TM builtins.

From-SVN: r182179
2011-12-09 22:05:26 +00:00
Eric Botcazou
8f420307e0 gimple-fold.c (gimple_fold_stmt_to_constant_1): Also check the TYPE_MODE to recognize useless pointer conversions.
* gimple-fold.c (gimple_fold_stmt_to_constant_1) <GIMPLE_UNARY_RHS>:
	Also check the TYPE_MODE to recognize useless pointer conversions.

From-SVN: r182178
2011-12-09 21:11:21 +00:00
Jakub Jelinek
6d1c2bd3ae re PR tree-optimization/51117 (rev.181172 causes glibc build failure)
PR tree-optimization/51117
	* tree-eh.c (optimize_clobbers): Don't remove just one
	clobber, but all consecutive clobbers before RESX.
	Use gimple_clobber_p predicate.

From-SVN: r182177
2011-12-09 21:50:40 +01:00
Jason Merrill
d179d17907 re PR c++/51151 (Invalid -Woverflow warning in C++ frontend)
PR c++/51151
	* call.c (perform_implicit_conversion_flags): Remove earlier kludge.
	* parser.c (cp_parser_omp_for_loop): Use cp_parser_omp_for_incr
	in templates even if decl isn't type-dependent.

From-SVN: r182175
2011-12-09 15:18:22 -05:00
François Dumont
9b81593bbc hashtable.h (_Hashtable<>::emplace, [...]): Add.
2011-12-09  François Dumont <fdumont@gcc.gnu.org>

	* include/bits/hashtable.h (_Hashtable<>::emplace,
	_Hashtable<>::emplace_hint): Add.
	* include/debug/unordered_set (unordered_set<>::emplace,
	unordered_set<>::emplace_hint, unordered_multiset<>::emplace,
	unordered_multiset<>::emplace_hint): Add.
	* include/profile/unordered_set: Likewise.
	* include/debug/unordered_map (unordered_map<>::emplace,
	unordered_map<>::emplace_hint, unordered_multimap<>::emplace,
	unordered_multimap<>::emplace_hint): Add.
	* include/profile/unordered_map: Likewise.
	* testsuite/23_containers/unordered_map/modifiers/emplace.cc: New.
	* testsuite/23_containers/unordered_multimap/modifiers/emplace.cc:
	New.
	* testsuite/23_containers/unordered_set/modifiers/emplace.cc: New.
	* testsuite/23_containers/unordered_multiset/modifiers/emplace.cc:
	New.
	* testsuite/util/testsuite_container_traits.h
	(traits_base::has_emplace): Add and defined as std::true_type for
	unordered containers.
	* testsuite/util/exception/safety.h (emplace, emplace_hint): Add and
	use them in basic_safety exception test case.
	* doc/xml/manual/status_cxx2011.xml: Update unordered containers
	status.

From-SVN: r182174
2011-12-09 20:01:04 +00:00
Dodji Seketeli
60ef5d4e7f PR c++/51289 - ICE with alias template for bound template template parm
gcc/cp/

	PR c++/51289
	* cp-tree.h (TYPE_TEMPLATE_INFO): Rewrite this accessor macro to
	better support aliased types.
	(TYPE_ALIAS_P): Don't crash on TYPE_NAME nodes that are not
	TYPE_DECL.
	* pt.c (find_parameter_packs_r): Handle types aliases.
	(push_template_decl_real): Check for bare parameter packs in the
	underlying type of an alias template.

gcc/PR51289/gcc/testsuite/

	PR c++/51289
	* g++.dg/cpp0x/alias-decl-17.C: New test.

From-SVN: r182170
2011-12-09 19:12:45 +01:00
Michael Meissner
15ce64af29 Fix PR51469 (attr-ifunc fails on ppc); Make #pragma GCC target ("...") change macros on PPC
From-SVN: r182169
2011-12-09 17:10:27 +00:00
Ian Lance Taylor
9820d09c26 syslog: Fix name of C syslog function.
From Rainer Orth.

From-SVN: r182168
2011-12-09 16:46:44 +00:00
Ian Lance Taylor
ec2c72551e runtime: make print() built-in write to stderr.
Fixes issue 2294.

From-SVN: r182167
2011-12-09 16:42:40 +00:00
H.J. Lu
7de612096c Restore errors.o dependency
2011-12-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/51479
	* Makefile.in (errors.o): Restored.

From-SVN: r182166
2011-12-09 07:59:51 -08:00
Michael Zolotukhin
43e78fd769 slp-13.c: Increase array size, add initialization.
* gcc.dg/vect/slp-13.c: Increase array size, add initialization.
	* gcc.dg/vect/slp-24.c: Ditto.
	* gcc.dg/vect/slp-3.c: Likewise and fix scans.
	* gcc.dg/vect/slp-34.c: Ditto.
	* gcc.dg/vect/slp-4.c: Ditto.
	* gcc.dg/vect/slp-cond-2.c: Ditto.
	* gcc.dg/vect/slp-multitypes-11.c: Ditto.
	* gcc.dg/vect/vect-1.c: Ditto.
	* gcc.dg/vect/vect-10.c: Ditto.
	* gcc.dg/vect/vect-105.c: Ditto.
	* gcc.dg/vect/vect-112.c: Ditto.
	* gcc.dg/vect/vect-15.c: Ditto.
	* gcc.dg/vect/vect-2.c: Ditto.
	* gcc.dg/vect/vect-31.c: Ditto.
	* gcc.dg/vect/vect-32.c: Ditto.
	* gcc.dg/vect/vect-33.c: Ditto.
	* gcc.dg/vect/vect-34.c: Ditto.
	* gcc.dg/vect/vect-35.c: Ditto.
	* gcc.dg/vect/vect-36.c: Ditto.
	* gcc.dg/vect/vect-6.c: Ditto.
	* gcc.dg/vect/vect-73.c: Ditto.
	* gcc.dg/vect/vect-74.c: Ditto.
	* gcc.dg/vect/vect-75.c: Ditto.
	* gcc.dg/vect/vect-76.c: Ditto.
	* gcc.dg/vect/vect-80.c: Ditto.
	* gcc.dg/vect/vect-85.c: Ditto.
	* gcc.dg/vect/vect-89.c: Ditto.
	* gcc.dg/vect/vect-97.c: Ditto.
	* gcc.dg/vect/vect-98.c: Ditto.
	* gcc.dg/vect/vect-all.c: Ditto.
	* gcc.dg/vect/vect-double-reduc-6.c: Ditto.
	* gcc.dg/vect/vect-iv-8.c: Ditto.
	* gcc.dg/vect/vect-iv-8a.c: Ditto.
	* gcc.dg/vect/vect-outer-1.c: Ditto.
	* gcc.dg/vect/vect-outer-1a.c: Ditto.
	* gcc.dg/vect/vect-outer-1b.c: Ditto.
	* gcc.dg/vect/vect-outer-2.c: Ditto.
	* gcc.dg/vect/vect-outer-2a.c: Ditto.
	* gcc.dg/vect/vect-outer-2c.c: Ditto.
	* gcc.dg/vect/vect-outer-3.c: Ditto.
	* gcc.dg/vect/vect-outer-3a.c: Ditto.
	* gcc.dg/vect/vect-outer-4a.c: Ditto.
	* gcc.dg/vect/vect-outer-4b.c: Ditto.
	* gcc.dg/vect/vect-outer-4c.c: Ditto.
	* gcc.dg/vect/vect-outer-4d.c: Ditto.
	* gcc.dg/vect/vect-outer-4m.c: Ditto.
	* gcc.dg/vect/vect-outer-fir-lb.c: Ditto.
	* gcc.dg/vect/vect-outer-fir.c: Ditto.
	* gcc.dg/vect/vect-over-widen-1.c: Ditto.
	* gcc.dg/vect/vect-over-widen-2.c: Ditto.
	* gcc.dg/vect/vect-over-widen-3.c: Ditto.
	* gcc.dg/vect/vect-over-widen-4.c: Ditto.
	* gcc.dg/vect/vect-reduc-1char.c: Ditto.
	* gcc.dg/vect/vect-reduc-2char.c: Ditto.
	* gcc.dg/vect/vect-reduc-pattern-1b.c: Ditto.
	* gcc.dg/vect/vect-reduc-pattern-1c.c: Ditto.
	* gcc.dg/vect/vect-reduc-pattern-2b.c: Ditto.
	* gcc.dg/vect/vect-shift-2.c: Ditto.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Ditto.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Ditto.
	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Ditto.
	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Ditto.
	* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Ditto.

From-SVN: r182165
2011-12-09 15:21:08 +00:00
Joern Rennecke
6d26322f97 dse.c (get_stored_val, [...]): Use gen_int_mode.
* dse.c (get_stored_val, get_call_args): Use gen_int_mode.
        * expmed.c (expand_divmod): Likewise.
        * combine.c (simplify_if_then_else): Likewise.

From-SVN: r182164
2011-12-09 14:10:02 +00:00
Richard Guenther
4a33ac4a77 re PR lto/48042 (lto segfaults while building Qt 4.7.2 with -g -flto -fwhole-program)
2011-12-09  Richard Guenther  <rguenther@suse.de>

	PR lto/48042
	* tree.c (free_lang_data_in_decl): Remove freeing conditional
	on debuginfo level.

	* g++.dg/lto/pr48042_0.C: New testcase.

From-SVN: r182163
2011-12-09 13:49:22 +00:00
Joern Rennecke
7543f91816 re PR middle-end/40154 (internal compiler error: in do_SUBST, at combine.c:681)
PR middle-end/40154
        * emit-rtl.c (set_dst_reg_note): New function.
        * rtl.h (set_dst_reg_note): Declare.
        * optabs.c (expand_binop, expand_absneg_bit): Use set_dst_reg_note.
        (emit_libcall_block, expand_fix): Likewise.
        * function.c (assign_parm_setup_reg, expand_function_start): Likewise.
        * expmed.c (expand_mult_const, expand_divmod): Likewise.
        * reload1.c (gen_reload): Likewise.

From-SVN: r182162
2011-12-09 12:57:24 +00:00
Kai Tietz
fb5503484f ira-color.c (print_hard_regs_subforest): Use HOST_WIDEST_INT_PRINT_DEC instead of %lld.
* ira-color.c (print_hard_regs_subforest): Use
	HOST_WIDEST_INT_PRINT_DEC instead of %lld.
	(allocno_hard_regs): Change type of cost member
	to HOST_WIDEST_INT.
	(add_allocno_hard_regs): Change type of argument cost
	to HOST_WIDEST_INT.
	* ira-conflict.c (build_conflict_bit_table): Replace use
	of long-long by HOST_WIDEST_INT.

From-SVN: r182161
2011-12-09 13:27:20 +01:00
Georg-Johann Lay
3447cae6cc re PR target/49313 (Inefficient libgcc implementations for avr)
PR target/49313
	* config/avr/t-avr (LIB1ASMFUNCS): Add _muldi3.
	* config/avr/lib1funcs.S (__muldi3): New function.

From-SVN: r182160
2011-12-09 12:02:06 +00:00
Georg-Johann Lay
b7de39b780 re PR target/51425 (Compiler fails to produce SBIS/SBIC instructions)
PR target/51425
	* config/avr/avr.md (config/avr/avr.md, *sbix_branch_tmp): Use
	zero_extract:QIHI instead of zero_extract:HI.

From-SVN: r182159
2011-12-09 11:54:29 +00:00
Jakub Jelinek
960f0c9d4c re PR tree-optimization/51117 (rev.181172 causes glibc build failure)
PR tree-optimization/51117
	* tree-eh.c (optimize_clobbers): New function.
	(execute_lower_eh_dispatch): Call it.

Co-Authored-By: Andrew Pinski <apinski@cavium.com>

From-SVN: r182158
2011-12-09 12:48:30 +01:00
Richard Biener
48f2e37342 re PR tree-optimization/51482 (ice: invalid types in conversion to floating point)
2011-12-09  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/51482
	* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
	Make sure to only create REAL_TYPE and INTEGER_TYPE component
	vectors.

	* g++.dg/torture/pr51482.C: New testcase.

From-SVN: r182156
2011-12-09 11:22:59 +00:00
Kai Tietz
7a71052e76 implicit-zee.c (num_realized): Change type to long.
* implicit-zee.c (num_realized): Change type to long.
	(num_ze_opportunities): Likewise.

From-SVN: r182155
2011-12-09 11:19:43 +01:00
Ian Lance Taylor
c573faf5e4 compiler: Another correction to hidden fields in composite literals.
From-SVN: r182154
2011-12-09 05:04:12 +00:00
Andrew Pinski
14f2a7e2b1 mips-cpus.def (octeon+): New CPU.
2011-12-08  Andrew Pinski  <apinski@cavium.com>

	* config/mips/mips-cpus.def (octeon+): New CPU.
	* config/mips/mips-tables.opt: Regenerate.
	* config/mips/mips.h (MIPS_CPP_SET_PROCESSOR): Emit '+' as 'P'.



2011-12-08  Andrew Pinski  <apinski@cavium.com>

	* cc.target/mips/mult-1.c: Forbid all Octeon processors.
	* gcc.target/mips/dmult-1.c: Likewise.
	* gcc.target/mips/branch-1.c: Likewise.
	* gcc.target/mips/extend-1.c: Likewise.

From-SVN: r182152
2011-12-08 19:56:36 -08:00
Alan Modra
fbf7be801c re PR libgomp/51376 (libgomp taskwait failure)
PR libgomp/51376
	* task.c (GOMP_taskwait): Don't access task->children outside of
	task_lock mutex region.
	(GOMP_task): Likewise.

From-SVN: r182151
2011-12-09 12:51:43 +10:30
GCC Administrator
108ba412c4 Daily bump.
From-SVN: r182148
2011-12-09 00:18:44 +00:00
Ian Lance Taylor
ca0401be06 compiler: It's OK to assign a struct with hidden fields in a literal.
From-SVN: r182144
2011-12-09 00:16:19 +00:00
Ian Lance Taylor
1fbbc69cdf compiler: Don't check for hidden fields on struct assignments.
From-SVN: r182143
2011-12-08 23:27:33 +00:00
Jason Merrill
0ee1c847f7 re PR c++/51318 (segfault on Eigen3)
PR c++/51318
	* typeck.c (build_x_conditional_expr): Restrict glvalue games to C++11.

From-SVN: r182142
2011-12-08 17:28:38 -05:00
Jason Merrill
4eefc795c1 re PR c++/51459 ('double free or corruption' involving std::function and lambdas)
PR c++/51459
	* pt.c (tsubst_expr) [DECL_EXPR]: Handle capture proxies properly.
	* semantics.c (insert_capture_proxy): No longer static.
	* cp-tree.h: Declare it.

From-SVN: r182141
2011-12-08 17:28:29 -05:00
Bill Schmidt
13a3e5b6d8 re PR middle-end/39976 (Big sixtrack degradation on powerpc 32/64 after revision r146817)
2011-12-08  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR middle-end/39976
	* tree-ssa-dom.c (enum expr_kind): Add EXPR_PHI.
	(struct hashable_expr): Add struct phi field.
	(initialize_hash_element): Handle phis; change to use XCNEWVEC.
	(hashable_expr_equal_p): Handle phis.
	(iterative_hash_hashable_expr): Likewise.
	(print_expr_hash_elt): Likewise.
	(free_expr_hash_elt): Likewise.
	(dom_opt_enter_block): Create equivalences from redundant phis.
	(eliminate_redundant_computations): Handle redundant phis.
	(lookup_avail_expr): Handle phis.

From-SVN: r182140
2011-12-08 22:00:38 +00:00
Jakub Jelinek
4be257dcc4 re PR tree-optimization/51466 (ICE in gimple_rhs_has_side_effects,)
PR tree-optimization/51466
	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also copy
	TREE_SIDE_EFFECTS.

	* gcc.c-torture/execute/pr51466.c: New test.

From-SVN: r182136
2011-12-08 20:49:02 +01:00
Tobias Burnus
3215710740 re PR fortran/50815 (ICE on allocation of deferred length character scalar dummy argument when -fbounds-check)
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50815
        * trans-decl.c (add_argument_checking): Skip bound checking
        for deferred-length strings.

2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50815
        * gfortran.dg/bounds_check_16.f90: New.

From-SVN: r182134
2011-12-08 20:00:55 +01:00
Tobias Burnus
3787b8ffe0 re PR fortran/51378 ([OOP] Structure constructor wrongly rejects parent components if only child has PRIVATE comps)
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51378
        * symbol.c (gfc_find_component): Fix access check of parent
        components.

2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51378
        * gfortran.dg/private_type_14.f90: New.

From-SVN: r182133
2011-12-08 19:56:58 +01:00
Tobias Burnus
14dcdf69d5 re PR libfortran/51407 (Use of BOZ edit descriptors to edit real and complex data and F2008)
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51407
        * io/transfer.c (require_numeric_type): New function.
        (formatted_transfer_scalar_read, formatted_transfer_scalar_write):
        Use it, allow BOZ edit descriptors with F2008.

2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51407
        * gfortran.dg/io_real_boz_3.f90: New.
        * gfortran.dg/io_real_boz_4.f90: New.
        * gfortran.dg/io_real_boz_5.f90: New.

From-SVN: r182132
2011-12-08 19:54:27 +01:00
Tobias Burnus
e48cc39155 re PR fortran/51448 (Compiler crash when assigning floating point values of different kinds)
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51448
        * fortran/trans-array.c (get_std_lbound): Fix handling of
        conversion functions.

2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51448
        * gfortran.dg/realloc_on_assign_8.f90: New.

From-SVN: r182131
2011-12-08 19:51:28 +01:00
Toon Moene
d62023228d re PR fortran/51310 (-finit-bla doesn't initialize *all* items of type bla to the requested constant.)
2011-12-08  Toon Moene  <toon@moene.org>

	PR fortran/51310
	* invoke.texi: Itemize the cases for which
	-finit-<type>=<constant> doesn't work.

From-SVN: r182127
2011-12-08 18:38:32 +00:00
Teresa Johnson
cf0a603a14 movdi-rex64.c: Remove unnecessary unused label.
* gcc.target/i386/movdi-rex64.c: Remove unnecessary
        unused label.

From-SVN: r182123
2011-12-08 17:01:21 +00:00
Teresa Johnson
828430c993 movdi-rex64.c: Remove unnecessary -Wwrite-strings option.
* gcc.target/i386/movdi-rex64.c: Remove unnecessary
        -Wwrite-strings option.

From-SVN: r182121
2011-12-08 16:45:21 +00:00
Teresa Johnson
bd531f092d movdi-rex64.c: New.
* gcc.target/i386/movdi-rex64.c: New.

From-SVN: r182119
2011-12-08 15:41:07 +00:00
Richard Guenther
9b854a9760 tree-ssa-operands.c (add_stmt_operand): Do not mark stmts volatile when processing operands of an ADDR_EXPR.
2011-12-08  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-operands.c (add_stmt_operand): Do not mark stmts
	volatile when processing operands of an ADDR_EXPR.
	(get_indirect_ref_operands): Likewise.
	(get_tmr_operands): Likewise.
	(get_expr_operands): Likewise.

	* gcc.dg/volatile3.c: New testcase.

From-SVN: r182117
2011-12-08 15:08:16 +00:00
Andreas Krebbel
b0a1ac21bd re PR target/50395 (Infinite loop when bootstrapping java)
2011-12-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	PR target/50395
	* config/s390/s390.c (s390_mainpool_finish): Emit the jump over
	the literal pool as jump insn.

From-SVN: r182116
2011-12-08 14:37:19 +00:00
Georg-Johann Lay
3c370d4240 re PR tree-optimization/51315 (unaligned memory accesses generated with -ftree-sra)
* gcc.c-torture/execute/20111208-1.c (int16_t): Use __INT16_TYPE__
	for typedef.
	(int32_t): Use __INT32_TYPE__ for typedef.
	PR tree-optimization/51315

From-SVN: r182115
2011-12-08 13:57:43 +00:00
Richard Guenther
1381811407 re PR tree-optimization/49772 (ICE: in ipa_pta_execute, at tree-ssa-structalias.c:6790 with -fipa-pta)
2011-12-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/49772
	* tree-inline.c (optimize_inline_calls): Remove bail out
	on errors.

From-SVN: r182110
2011-12-08 13:23:54 +00:00
Georg-Johann Lay
cffef82595 re PR tree-optimization/51315 (unaligned memory accesses generated with -ftree-sra)
PR tree-optimization/51315
	* gcc.c-torture/execute/20111208-1.c: Fix wrong assumption
	sizeof(int)==4.

From-SVN: r182109
2011-12-08 12:38:35 +00:00
Richard Guenther
4341f26129 re PR lto/50747 (ICE in produce_symtab, at lto-streamer-out.c:1435)
2011-12-08  Richard Guenther  <rguenther@suse.de>

	PR lto/50747
	* lto-streamer-out.c (produce_symtab): Remove asserts.

	* g++.dg/opt/pr50747-1_0.C: New testcase.
	* g++.dg/opt/pr50747-2_0.C: Likewise.

From-SVN: r182108
2011-12-08 12:32:19 +00:00
Richard Guenther
befa62e74e re PR middle-end/49945 (gcc.dg/guality/vla-1.c FAILs with -flto)
2011-12-08  Richard Guenther  <rguenther@suse.de>

	PR lto/49945
	* lto-streamer-out.c (tree_is_indexable): Localize variably
	modified types and their FIELD_DECLs.

From-SVN: r182107
2011-12-08 11:43:12 +00:00
Jonathan Wakely
3d0c32fe56 atomic_base.h (__calculate_memory_order): Rename to...
* include/bits/atomic_base.h (__calculate_memory_order): Rename to...
	(__cmpexch_failure_order): This, and rewrite as constexpr function.
	(compare_exchange_strong, compare_exchange_weak): Use it.
	* include/std/atomic (compare_exchange_strong, compare_exchange_weak):
	Likewise.

From-SVN: r182105
2011-12-08 09:44:57 +00:00
Eric Botcazou
908b951938 re PR tree-optimization/51315 (unaligned memory accesses generated with -ftree-sra)
PR tree-optimization/51315
	* tree.h (get_object_or_type_alignment): Declare.
	* expr.c (get_object_or_type_alignment): Move to...
	* builtins.c (get_object_or_type_alignment): ...here.  Add assertion.
	* tree-sra.c (tree_non_mode_aligned_mem_p): Rename to...
	(tree_non_aligned_mem_p): ...this.  Add ALIGN parameter.  Look into
	MEM_REFs and use get_object_or_type_alignment for them.
	(build_accesses_from_assign): Adjust for above change.
	(access_precludes_ipa_sra_p): Likewise.

From-SVN: r182102
2011-12-08 09:05:38 +00:00
Richard Guenther
c37257a1f6 re PR lto/48437 (LTO crashes with block-local function declarations)
2011-12-08  Richard Guenther  <rguenther@suse.de>

	PR lto/48437
	* lto-streamer-out.c (tree_is_indexable): Exclude block-local
	extern declarations.

	* gcc.dg/lto/20111207-2_0.c: New testcase.
	* gcc.dg/guality/pr48437.c: Likewise.

From-SVN: r182100
2011-12-08 08:50:35 +00:00
Jakub Jelinek
a633b93ea3 re PR c++/51401 ([c++0x] [4.7 Regression] ICE with invalid use of auto in template)
PR c++/51401
	* decl.c (grokdeclarator): Error for auto on non-static data members.

	* g++.dg/cpp0x/auto7.C: Adjust expected error message.
	* g++.dg/cpp0x/auto29.C: New test.

From-SVN: r182097
2011-12-08 01:50:26 +01:00