Commit Graph

98248 Commits

Author SHA1 Message Date
Dodji Seketeli
1a048f8232 Fix PRs c++/42758, c++/42634, c++/42797
... and mitigate PR c++/42336

gcc/cp/ChangeLog:
	PR c++/42758
	PR c++/42634
	PR c++/42336
	PR c++/42797
	PR c++/42880
	* cp-tree.h (NON_DEFAULT_TEMPLATE_ARGS_COUNT,
	SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT,
	GET_NON_DEFAULT_TEMPLATE_ARGS_COUNT): New accessor macros.
	* pt.c (coerce_template_parms, type_unification_real,
	expand_template_argument_pack, coerce_template_parameter_pack):
	Set the non default template args count.
	(current_template_args): Always set non defaulted
	template args count when compiled with --enable-checking
	(tsubst_template_args, type_unification_real): Propagate the non
	defaulted template args count.
	* error.c (get_non_default_template_args_count): Renamed
	count_non_default_template_args into this. Don't calculate the
	non default template argument count anymore. Use the new
	accessor macros above to get it.
	(dump_template_argument_list, dump_type, dump_decl,
	dump_template_parms): Adjust.
	* parser.c (cp_parser_template_argument_list): Always set defaulted
	template args count when compiled with --enable-checking.

gcc/testsuite/ChangeLog:
	PR c++/42758
	PR c++/42634
	PR c++/42336
	PR c++/42797
	PR c++/42880
	* g++.dg/other/crash-5.C: New test.
	* g++.dg/other/crash-6.C: New test.
	* g++.dg/other/crash-7.C: New test.
	* g++.dg/other/crash-8.C: New test.

From-SVN: r156351
2010-01-29 15:30:41 +01:00
Richard Guenther
eb6b98c71c tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
2010-01-29  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
	Assert we successfully updated the call.

From-SVN: r156346
2010-01-29 12:19:36 +00:00
Jakub Jelinek
c23cd1d60f re PR rtl-optimization/42889 ("-fcompare-debug failure (length)" with "-O1 -fgcse")
PR rtl-optimization/42889
	* df.h (df_set_bb_dirty_nonlr): New prototype.
	* df-core.c (df_set_bb_dirty_nonlr): New function.
	* df-scan.c (df_insn_rescan): Call it instead of
	df_set_bb_dirty for DEBUG_INSNs.

	* gcc.dg/pr42889.c: New test.

From-SVN: r156344
2010-01-29 13:14:47 +01:00
Richard Guenther
38bc76da3d re PR middle-end/37448 (cannot compile big function)
2010-01-29  Richard Guenther  <rguenther@suse.de>

	PR middle-end/37448
	* ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
	quadratic behavior in most cases.

From-SVN: r156343
2010-01-29 11:26:27 +00:00
Shujing Zhao
9ee5ebeb8d decl.c (redeclaration_error_message): Wrap the return messages to G_() for easy translation.
2010-01-29  Shujing Zhao  <pearly.zhao@oracle.com>

        * decl.c (redeclaration_error_message): Wrap the return messages to
        G_() for easy translation.

From-SVN: r156340
2010-01-29 03:28:50 +00:00
GCC Administrator
b42e0e49ad Daily bump.
From-SVN: r156339
2010-01-29 00:16:44 +00:00
Jason Merrill
cd92414429 re PR c++/42880 (trunk does not compile boost MPL)
PR c++/42880
	* semantics.c (begin_class_definition): Don't use type_as_string.

From-SVN: r156336
2010-01-28 17:52:36 -05:00
François Dumont
a2fe92030c stl_algobase.h (struct __iter_base): Add.
2010-01-28  François Dumont  <francois.cppdevs@free.fr>

	* include/bits/stl_algobase.h (struct __iter_base): Add.
	(__niter_base, __miter_base): Adjust, use the latter.

From-SVN: r156335
2010-01-28 22:29:52 +00:00
Steve Ellcey
6684eb28f6 configure.tgt (*-*-hpux*): Add -frandom-seed flag.
2010-01-28  Steve Ellcey  <sje@cup.hp.com>

	* configure.tgt (*-*-hpux*): Add -frandom-seed flag.

From-SVN: r156334
2010-01-28 21:47:59 +00:00
H.J. Lu
d6bedeaf48 Use SSE2 on gcc.target/i386/pr42881.c.
2010-01-28  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.target/i386/pr42881.c: Use SSE2.

From-SVN: r156333
2010-01-28 13:35:16 -08:00
Uros Bizjak
d819472d13 re PR target/42891 (ice in extract_insn, at recog.c:2097)
PR target/42891
	* config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
	in the call to gen_x86_movsicc_0_m1.

testsuite/ChangeLog:

	PR target/42891
	* gcc.target/i386/pr42891.c: New test.

From-SVN: r156327
2010-01-28 18:58:03 +01:00
Paolo Carlini
8c0b91b4ce 21674.cc: Extend xfail to all systems.
2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/element_access/char/21674.cc:
	Extend xfail to all systems.
	* testsuite/21_strings/basic_string/element_access/wchar_T/21674.cc:
	Likewise.
	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
	Extend xfail to darwin10 systems.

From-SVN: r156326
2010-01-28 17:01:53 +00:00
Richard Guenther
3ed7d068d9 re PR tree-optimization/42871 (g++: Internal error: Segmentation fault (program cc1plus))
2010-01-28  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/42871
	* tree-ssa-pre.c (phi_translate_set): Make sure to retain
	leaders.

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

From-SVN: r156324
2010-01-28 14:45:09 +00:00
Richard Guenther
830bc5507b tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate into call arguments.
2010-01-28  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
	into call arguments.

	* gcc.dg/Wobjsize-1.h: New testcase.
	* gcc.dg/Wobjsize-1.c: Likewise.

From-SVN: r156323
2010-01-28 14:42:17 +00:00
Richard Biener
28e5ca15b7 re PR middle-end/42883 (internal compiler error: in redirect_eh_edge_1, at tree-eh.c:2112)
2010-01-28  Richard Guenther  <rguenther@suse.de>

	PR middle-end/42883
	* tree-cfgcleanup.c (remove_forwarder_block): Do not remove
	the forwarder if the destination is an EH landing pad.

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

From-SVN: r156322
2010-01-28 14:40:59 +00:00
Razya Ladelsky
8adfe01d22 28-01-2010 Razya Ladelsky <razya@il.ibm.com>
* tree-parloops.c (transform_to_exit_first_loop): Update the basic 
        block list passed to gimple_duplicate_sese_tail.
        (parallelize_loops): Avoid parallelization when the function
        has_nonlocal_label.
        Avoid parallelization when the preheader is IRREDUCIBLE.
        Try to optimize when estimated_loop_iterations_int is unresolved.
        Add the loop's location to the dump file.
        * tree-cfg.c(add_phi_args_after_redirect): Remove.
        (gimple_duplicate_sese_tail): Remove the check for the latch.
        Redirect nexits to the exit block.
        Remove handling of the incoming edges to the latch.
        Redirect the backedge from the copied latch to the exit bb.

From-SVN: r156321
2010-01-28 14:24:25 +00:00
Michael Matz
3d952fb783 re PR target/42881 (SSE2 intrinsics miscompiled at -O0 -march=k8)
PR target/42881
	* config/i386/i386.c (ix86_expand_vector_init_duplicate):
	Wrap force_reg into a sequence, emit it before user.

testsuite/
	* gcc.target/i386/pr42881.c: New test.

From-SVN: r156320
2010-01-28 14:11:34 +00:00
Pascal Obry
2b30b635ab s-win32.ads: Add some missing constants.
2010-01-28  Pascal Obry  <obry@adacore.com>

	* s-win32.ads: Add some missing constants.

From-SVN: r156319
2010-01-28 14:44:54 +01:00
Vincent Celier
94ff25998d prj-attr-pm.adb (Add_Attribute): Do nothing if To_Package is Unknown_Package.
2010-01-28  Vincent Celier  <celier@adacore.com>

	* prj-attr-pm.adb (Add_Attribute): Do nothing if To_Package is
	Unknown_Package.

From-SVN: r156318
2010-01-28 14:40:10 +01:00
Rainer Orth
78f56a7b7d linkage.exp: Remove mips-sgi-irix6*o32 support.
* gcc.misc-tests/linkage.exp: Remove mips-sgi-irix6*o32 support.
	Add i?86-*-solaris2* support.

From-SVN: r156317
2010-01-28 13:22:03 +00:00
Dodji Seketeli
20c202f323 re PR c++/42713 (ICE - segfault in tsubst)
Fix PR c++/42713

gcc/cp/ChangeLog:
	PR c++/42713
	PR c++/42820
	* typeck.c (get_template_parms_of_dependent_type): Factorized
	this out of incompatible_template_type_parms_p
	(incompatible_dependent_types_p): Renamed
	incompatible_template_type_parms_p into this. Make it detect
	two incompatible dependent typedefs too.
	(structural_comptypes): Use incompatible_dependent_types_p.
	* pt.c (get_template_info):
	Handle BOUND_TEMPLATE_TEMPLATE_PARAM.

gcc/testsuite/ChangeLog:
	PR c++/42713
	PR c++/42820
	* g++.dg/template/typedef27.C: New test case.
	* g++.dg/template/typedef28.C: New test case.

From-SVN: r156316
2010-01-28 13:29:52 +01:00
Kai Tietz
b4394ebd56 Fix unnamed extension for ISO-C.
From-SVN: r156315
2010-01-28 12:26:01 +01:00
Robert Dewar
73d2b42ab5 gnat_rm.texi: Minor correction
2010-01-28  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Minor correction

From-SVN: r156314
2010-01-28 11:10:58 +01:00
Stephen Thomas
4fc2b1aabf Fix bswap patterns for trunk.
Committed by Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

2010-01-28 Stephen Thomas <stephen.thomas@arm.com>

        * config/arm/arm.md (bswapsi2): Add support for bswapsi2.
        (arm_rev): New.
        (arm_legacy_rev): Likewise.
        (thumb_legacy_rev): Likewise.


2010-01-28 Stephen Thomas <stephen.thomas@arm.com>

        * testsuite/gcc.dg/optimize-bswap*.c: Add ARM target

From-SVN: r156313
2010-01-28 08:35:59 +00:00
GCC Administrator
c2776306a8 Daily bump.
From-SVN: r156310
2010-01-28 00:16:42 +00:00
Benjamin Kosnik
91c54466c7 re PR c++/42346 (darwin instantiation vs. optimization oddity)
2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>

	PR c++/42346
	* testsuite/23_containers/unordered_map/requirements/exception/: Remove
	-O1 workaround.
	* testsuite/23_containers/multimap/requirements/exception/: Same.
	* testsuite/23_containers/map/requirements/exception: Same.

From-SVN: r156303
2010-01-27 20:12:41 +00:00
Jason Merrill
2f59d9e044 * gcc/cp/tree.c: Tweak comment in no_linkage_check.
From-SVN: r156300
2010-01-27 14:48:34 -05:00
Jakub Jelinek
0f277ad43f dwarf2out.c (mem_loc_descriptor): Remove special casing of CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.
* dwarf2out.c (mem_loc_descriptor): Remove special casing of
	CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.  If for MEM recursive call
	on MEM's address failed, try avoid_constant_pool_reference and
	recurse if it returned something different.
	(loc_descriptor): If for MEM mem_loc_descriptor failed on the
	address, try avoid_constant_pool_reference and recurse if it
	returned something different.
	(dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
	address and avoid_constant_pool_reference returned something
	different, don't set have_address.

From-SVN: r156293
2010-01-27 17:38:58 +01:00
Alexandre Oliva
fb4cbb9f9e re PR debug/42861 (Spill slots not tracked during var-tracking)
PR debug/42861
	* var-tracking.c (val_store): Add modified argument, obey it.
	Adjust callers.
	(count_uses): Move down logging of main.
	(compute_bb_dataflow): Use val_store for MO_VAL_USEs that
	don't need resolution.
	(emit_notes_in_bb): Likewise.

From-SVN: r156292
2010-01-27 17:36:57 +01:00
Richard Guenther
e87da26377 re PR tree-optimization/42878 ("-fcompare-debug failure" at -O1 (2))
2010-01-27  Richard Guenther  <rguenther@suse.de>

	PR middle-end/42878
	* tree-inline.c (remap_decl): Delay remapping of SSA name
	default definitions until we need them.

	* gcc.dg/torture/pr42878-1.c: New testcase.
	* gcc.dg/torture/pr42878-2.c: Likewise.

From-SVN: r156291
2010-01-27 16:00:31 +00:00
Richard Guenther
77597d3907 re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
2010-01-27  Richard Guenther  <rguenther@suse.de>

	PR libstdc++/42832
	* include/std/functional (function<>::swap): Perform bytewise
	swap of _M_functor.
	* include/tr1/functional (function<>::swap): Likewise.

From-SVN: r156290
2010-01-27 15:49:00 +00:00
Jakub Jelinek
9a78eb7197 rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
	(rs6000_delegitimize_address): New function.

From-SVN: r156289
2010-01-27 16:14:09 +01:00
Jakub Jelinek
e8d8f497d1 s390.c (s390_delegitimize_address): Call delegitimize_mem_from_attrs.
* config/s390/s390.c (s390_delegitimize_address): Call
	delegitimize_mem_from_attrs.

From-SVN: r156288
2010-01-27 16:12:55 +01:00
Jakub Jelinek
c6d99cad12 re PR middle-end/42874 (Error on correct code: sorry, unimplemented: function ‘foo’ can never be copied because it uses)
PR middle-end/42874
	* tree-inline.c (cannot_copy_type_1): Removed.
	(copy_forbidden): Don't forbid copying of functions containing
	records/unions with variable length fields.

	* gcc.dg/vla-22.c: New test.

From-SVN: r156287
2010-01-27 16:09:23 +01:00
Nick Clifton
990dc01600 Revert r156276
From-SVN: r156286
2010-01-27 14:17:48 +00:00
Pascal Obry
09d7d413bd g-awk.adb: ensure that an AWK session is reusable.
2010-01-27  Pascal Obry  <obry@adacore.com>

	* g-awk.adb: ensure that an AWK session is reusable.

From-SVN: r156285
2010-01-27 15:15:42 +01:00
Arnaud Charlet
0309455b50 [multiple changes]
2010-01-27  Vasiliy Fofanov  <fofanov@adacore.com>

	* g-regist.adb (For_Every_Key): Fix previous change.

2010-01-27  Thomas Quinot  <quinot@adacore.com>

	* lib-writ.ads: Current version of spec for new N (note) ALI lines

2010-01-27  Yannick Moy  <moy@adacore.com>

	* a-cdlili.adb (Insert): Correct exception message when cursor
	designates wrong list.

From-SVN: r156284
2010-01-27 14:39:30 +01:00
Arnaud Charlet
95cb33a561 [multiple changes]
2010-01-27  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb: When there is only one main specified, the package
	support Switches (<main>) and attribute Switches is specified for the
	main, use these switches, instead of Default_Switches ("Ada").

2010-01-27  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb, par-prag.adb, snames.ads-tmpl: pragma Dimension initial
	implementation.
	* exp_disp.adb: Minor reformatting

From-SVN: r156283
2010-01-27 14:29:52 +01:00
Christian Bruel
4f6fee0ff2 temporarily revert fix for PR target/42841
From-SVN: r156282
2010-01-27 14:24:40 +01:00
Matthias Klose
cdf6bfb713 configure.ac (gnu-unique-object): Fix ldd version check.
2010-01-27  Matthias Klose  <doko@ubuntu.com>

        * configure.ac (gnu-unique-object): Fix ldd version check.
        * configure: Regenerate.

From-SVN: r156281
2010-01-27 13:02:50 +00:00
Arnaud Charlet
21d11f4f30 [multiple changes]
2010-01-27  Tristan Gingold  <gingold@adacore.com>

	* seh_init.c: Use __ImageBase instead of _ImageBase.

2010-01-27  Javier Miranda  <miranda@adacore.com>

	* exp_disp.ads, exp_disp.adb (Expand_Interface_Thunk): Modify the
	profile of interface thunks. The type of the controlling formal is now
	the covered interface type (instead of the target tagged type).

From-SVN: r156280
2010-01-27 13:06:07 +01:00
Sergey Rybin
ee13bdc7cb gnat_rm.texi, [...]: Update gnatcheck doc.
2010-01-27  Sergey Rybin  <rybin@adacore.com>

	* gnat_rm.texi, gnat_ugn.texi: Update gnatcheck doc.

From-SVN: r156279
2010-01-27 12:58:53 +01:00
Robert Dewar
5c39d89f38 sinput.ads, sinput.adb (Sloc_Range): Applies to all nodes, formal changed from Expr to N.
2010-01-27  Robert Dewar  <dewar@adacore.com>

	* sinput.ads, sinput.adb (Sloc_Range): Applies to all nodes, formal
	changed from Expr to N.

From-SVN: r156278
2010-01-27 12:37:20 +01:00
Paolo Carlini
677b1f5131 2010-01-27 Paolo Carlini <paolo.carlini@oracle.com>
* Fix ChangeLog typos.

From-SVN: r156277
2010-01-27 11:28:57 +00:00
Wei Guozhi
336e24cffc re PR target/42671 (Thumb2 generate more instructions than Thumb1 to load GOT address)
PR target/42671
        * config/arm/arm.c (arm_load_pic_register): Use the same code
        sequence with Thumb2 as for Thumb1.
        * config/arm/arm.md (pic_add_dot_plus_four): Enable this pattern
        for all Thumb varieties.

From-SVN: r156276
2010-01-27 09:19:36 +00:00
Andreas Krebbel
b4b04ed67d gnu.ver: Avoid time_get pattern conflicts.
2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.

From-SVN: r156275
2010-01-27 09:15:19 +00:00
Rainer Orth
31b217392f sparc.c (sparc_elf_asm_named_section): Test for HAVE_GNU_AS value.
* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
	HAVE_GNU_AS value.
	* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
	Test for HAVE_GNU_AS value.

From-SVN: r156272
2010-01-27 09:06:04 +01:00
GCC Administrator
9f8a264bdd Daily bump.
From-SVN: r156268
2010-01-27 00:16:34 +00:00
Paolo Bonzini
2122aa973e configure.ac: Test for executability of _the first word_ of GFORTRAN.
2010-01-26  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac: Test for executability of _the first word_ of GFORTRAN.
	* configure: Regenerate.

From-SVN: r156264
2010-01-26 21:32:28 +00:00
Ian Lance Taylor
3bf714a72b * MAINTAINERS: Add myself as Go frontend maintainer.
From-SVN: r156260
2010-01-26 19:44:11 +00:00