Commit Graph

114310 Commits

Author SHA1 Message Date
Arnaud Charlet
b26f70a095 Minor reformatting.
From-SVN: r182538
2011-12-20 14:56:21 +01:00
Hristian Kirtchev
15954beb2b sem_ch4.adb (Operator_Check): Update the call to Is_Dimensioned_Type.
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch4.adb (Operator_Check): Update the call to
	Is_Dimensioned_Type.
	* sem_dim.adb: Remove with and use clause for Namet.Sp. Reorganize
	all type declarations and datastructures involved. Propagate
	all changes involving data structures and types throughout
	the pakage. Alphabetize all subprograms. Add ??? comments.
	(AD_Hash): Removed.
	(Analyze_Aspect_Dimension): Rewritten. This
	routine now does all its checks in one pass rather than
	two. Refactor code. The error message are now in a more GNAT-ish style.
	(Create_Rational_From_Expr): This is now a function.
	(Get_Dimensions): Removed.
	(Get_Dimensions_String_Id): Removed.
	(Dimensions_Of): New rouitne.
	(Exists): New routines.
	(Is_Invalid): New routine.
	(Permits_Dimensions): Removed.
	(Present): Removed.
	(Set_Symbol): New routine.
	(System_Of): New routine.
	* sem_dim.ads: Rewrite the top level description of the
	package. Alphabetize subprograms. Add various comments on
	subprogram usage. Add ??? comments.
	(Is_Dimensioned_Type):
	Renamed to Has_Dimension_System.
	* sem_res.adb (Resolve_Op_Expon): Update the call to Is_Dimensioned_Type

From-SVN: r182537
2011-12-20 14:55:31 +01:00
Ed Schonberg
76d49f494a sem_ch13.adb (Check_Indexing_Functions): The return type of an indexing function can be the default element type...
2011-12-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Check_Indexing_Functions): The return type of an
	indexing function can be the default element type, and does not
	need to be a reference type.
	* sem_ch4.adb (Try_Container_Indexing): Ditto.

From-SVN: r182536
2011-12-20 14:53:42 +01:00
Arnaud Charlet
a68d415b1d [multiple changes]
2011-12-20  Robert Dewar  <dewar@adacore.com>

	* a-cdlili.ads, sem_cat.adb, sem_ch10.adb: Minor reformatting.

2011-12-20  Bob Duff  <duff@adacore.com>

	* s-taprop-mingw.adb (Yield): Do_Yield is no longer Unreferenced.

2011-12-20  Vincent Pucci  <pucci@adacore.com>

	* impunit.adb: s-dimkio, s-dimmks and s-dmotpr defined as GNAT
	Defined Additions to System.
	* Makefile.rtl: s-dimkio, s-dimmks and s-dmotpr added.
	* s-dimkio.ads, s-dimmks.ads, s-dmotpr.ads: New files.

2011-12-20  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch4.adb (Traverse_Homonyms): Allow a homonym to match when
	within an instance, even if the homonym is marked Is_Hidden at
	this point.

From-SVN: r182535
2011-12-20 14:52:22 +01:00
Arnaud Charlet
54c04d6ca5 [multiple changes]
2011-12-20  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_ch5.adb, s-diinio.adb, s-diinio.ads, sem_dim.adb,
	sem_dim.ads, sem_res.adb, s-stposu.adb, s-stposu.ads, sem_ch4.adb,
	s-diflio.adb, s-diflio.ads, exp_disp.adb, s-llflex.ads: Minor
	reformatting.
	* aspects.ads: Dimension[_Aspects] are GNAT defined.

2011-12-20  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
	renaming case.

2011-12-20  Thomas Quinot  <quinot@adacore.com>

	* sem_cat.adb, sem_ch10.adb (Analyze_With_Clause): For a WITH clause on
	a child unit that is an illegal instantiation, mark the WITH clause in
	error.
	(Install_Siblings, Validate_Categorization_Dependency): Guard
	against WITH clause marked as in error.

From-SVN: r182534
2011-12-20 14:47:44 +01:00
Hristian Kirtchev
7b2aafc959 sem_res.adb (Resolve_Allocator): Warning on allocation of tasks on a subpool and rewrite the allocator into a...
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_res.adb (Resolve_Allocator): Warning on allocation
	of tasks on a subpool and rewrite the allocator into a raise
	Program_Error statement.
	* s-stposu.ads, s-stposu.adb: Code reformatting.
	(Create_Subpool): Remove formal parameter Storage_Size.
	(Default_Subpool_For_Pool): Add the default implementation of this
	routine.
	(Set_Pool_Of_Subpool): Rename formal parameter Pool to To. Update
	all the uses of the parameter.

From-SVN: r182533
2011-12-20 14:41:00 +01:00
Dodji Seketeli
9a417f117e PR debug/49951 - jumpy stepping at end of scope in C++
gcc/cp/

	PR debug/49951
	* decl.c (cxx_maybe_build_cleanup): Don't set location of the call
	to the destructor.

gcc/testsuite/

	PR debug/49951
	* g++.dg/gcov/gcov-2.C: Adjust.

From-SVN: r182532
2011-12-20 14:36:04 +01:00
Rainer Orth
08b2f8e637 Support 64-bit libjava multilib for i?86-linux
* configure.ac (i?86-*-linux*): Set SIGNAL_HANDLER_AUX.
	* configure: Regenerate.
	* include/i386-signal.h: Wrap in __i386__, include
	java-signal-aux.h otherwise.

From-SVN: r182528
2011-12-20 12:18:26 +00:00
Rainer Orth
6b302f9720 Support 64-bit libgnat multilib on i?86-linux
* gcc-interface/Makefile.in (%86 linux%):
	(LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS.
	(LIBGNAT_TARGET_PAIRS_64): New.
	(LIBGNAT_TARGET_PAIRS): Add either depending on multilib.

From-SVN: r182527
2011-12-20 12:16:43 +00:00
Paolo Carlini
f0bc5f840f re PR c++/51612 ([c++0x] [4.6/4.7 Regression] ICE with constexpr constructor and virtual base class)
/cp
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51612
	* semantics.c (is_valid_constexpr_fn): In case of constexpr
	constructors also check for virtual base classes.

/testsuite
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51612
	* g++.dg/cpp0x/constexpr-ice4.C: New.

From-SVN: r182526
2011-12-20 10:38:44 +00:00
Richard Guenther
336e404f9f re PR debug/46796 (debug info missing builtin type names with lto)
2011-12-20  Richard Guenther  <rguenther@suse.de>

	PR lto/46796
	* dwarf2out.c (modified_type_die): When the type variant
	chain is corrupt use the types name, if available, instead
	of __unknown__.

From-SVN: r182524
2011-12-20 09:49:17 +00:00
Jonathan Wakely
d8ab827382 re PR libstdc++/51365 (cannot use final empty class in std::tuple)
PR libstdc++/51365
	* include/std/tuple (_Tuple_impl): Check __is_final as well as
	is_empty.
	* testsuite/20_util/tuple/51365.cc: New.

From-SVN: r182523
2011-12-20 09:09:50 +00:00
Uros Bizjak
1bb4b6a35a linux-unwind.h: Update copyright years.
* config/alpha/linux-unwind.h: Update copyright years.
	(MD_FROB_UPDATE_CONTEXT): New define.
	(alpha_frob_update_context): New function.

From-SVN: r182522
2011-12-20 09:46:38 +01:00
Tristan Gingold
cf45cd09af alpha.c (alpha_start_function): Adjust condition to create VMS trampoline entry point.
2011-12-20  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/alpha.c (alpha_start_function): Adjust condition to
	create VMS trampoline entry point.

From-SVN: r182521
2011-12-20 08:35:12 +00:00
Tristan Gingold
8c3db96e64 aclocal.m4: Assume strncmp works in cross case.
2011-12-20  Tristan Gingold  <gingold@adacore.com>

	* aclocal.m4: Assume strncmp works in cross case.
	* configure: Regenerate

From-SVN: r182520
2011-12-20 08:08:30 +00:00
GCC Administrator
0f172beec4 Daily bump.
From-SVN: r182516
2011-12-20 00:18:56 +00:00
Benjamin Kosnik
d50fb67123 eh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/eh_tm.cc (free_any_cxa_exception): Use
	__GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.

From-SVN: r182512
2011-12-20 00:16:25 +00:00
Benjamin Kosnik
31785b29ee search_n.cc: Disambiguate local variable.
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/performance/25_algorithms/search_n.cc: Disambiguate
	local variable.

From-SVN: r182510
2011-12-19 23:29:14 +00:00
Paolo Carlini
eded273670 re PR c++/51328 (ICE on invalid template parameter)
/cp
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51328
	* pt.c (convert_template_argument): Early error out and return
	error_mark_node for invalid uses of destructors as types.

/testsuite
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51328
	* g++.dg/template/crash109.C: New.

From-SVN: r182508
2011-12-19 22:40:11 +00:00
Richard Sandiford
77a748f887 Add a PR reference.
From-SVN: r182506
2011-12-19 22:23:42 +00:00
Jason Merrill
4f7002c581 re PR c++/51530 ([C++0x] internal compiler error: in unify, at cp/pt.c:16854)
PR c++/51530
	* pt.c (unify): Handle NULLPTR_TYPE.

From-SVN: r182505
2011-12-19 17:08:29 -05:00
Richard Sandiford
7a61392921 fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND optimization if the source register is already extended.
gcc/
	* fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
	optimization if the source register is already extended.

From-SVN: r182504
2011-12-19 22:05:28 +00:00
Richard Sandiford
373203331a mult-1.c: Require -O2.
gcc/testsuite/
	* gcc.target/mips/mult-1.c: Require -O2.

From-SVN: r182502
2011-12-19 21:45:21 +00:00
Richard Sandiford
da3507d0a4 ext-2.c: Add NOMIPS16.
gcc/testsuite/
	* gcc.target/mips/ext-2.c: Add NOMIPS16.

From-SVN: r182501
2011-12-19 21:42:12 +00:00
Richard Sandiford
488c8379f4 lower-subreg.c (can_decompose_p): Check every word of a hard register.
gcc/
	* lower-subreg.c (can_decompose_p): Check every word of a hard
	register.

From-SVN: r182500
2011-12-19 21:19:13 +00:00
Jason Merrill
176fcc5d18 re PR c++/51526 ([C++11][constexpr] constexpr delegating constructor should be accepted)
PR c++/51526
	* semantics.c (build_data_member_initialization): Handle
	delegating constructor.
	(build_constexpr_constructor_member_initializers): Likewise.

From-SVN: r182499
2011-12-19 16:06:44 -05:00
Sandra Loosemore
8f1ad6b6bf re PR rtl-optimization/50380 ([4.6 only] cc1 hangs eating 100% CPU)
2011-12-19  Sandra Loosemore  <sandra@codesourcery.com>
	    Tom de Vries <tom@codesourcery.com>

	PR rtl-opt/50380

	gcc/
	* cse.c (find_comparison_args): Detect fixed point and
	bail early.

	gcc/testsuite/
	* gcc.c-torture/compile/pr50380.c: New testcase.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r182498
2011-12-19 15:29:21 -05:00
Tobias Burnus
1e815d3221 re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * parse.c (gfc_fixup_sibling_symbols): Regard FL_LABEL as
        local symbol.

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

        PR fortran/51605
        * gfortran.dg/block_10.f90: New.

From-SVN: r182497
2011-12-19 21:18:18 +01:00
Jason Merrill
11c71a22d9 re PR c++/51553 (brace initialization and conversion operators)
PR c++/51553
	* cp-tree.h (LOOKUP_LIST_INIT_CTOR): Rename from
	LOOKUP_NO_COPY_CTOR_CONVERSION.
	(add_list_candidates): Set it earlier.
	(add_candidates): Don't check explicit on ctors when it's set.
	(add_function_candidate): Check it even when LOOKUP_ONLYCONVERTING
	is set.

From-SVN: r182496
2011-12-19 15:10:49 -05:00
Jason Merrill
00ef705904 re PR c++/51553 (brace initialization and conversion operators)
PR c++/51553
	* call.c (add_function_candidate): Allow conversions for the copy
	parm in list-initialization unless the argument is an init-list.

From-SVN: r182495
2011-12-19 15:10:37 -05:00
Jason Merrill
d58d6eb5ec re PR c++/51228 (ICE with transparent union)
PR c++/51228
	* c-common.c (handle_transparent_union_attribute): Check the first
	field if the type is complete.

From-SVN: r182494
2011-12-19 15:10:25 -05:00
Aldy Hernandez
1784915af2 Commit forgotten testcase that goes along with this PR.
PR middle-end/51411
	* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.

From-SVN: r182493
2011-12-19 19:33:05 +00:00
Aldy Hernandez
e0b22991cc re PR middle-end/51411 (ICE: in function_and_variable_visibility, at ipa.c:835 with -O -fgnu-tm and overriding virtual transaction_safe function)
PR middle-end/51411
	* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.

From-SVN: r182492
2011-12-19 19:31:17 +00:00
Eric Botcazou
a062c51e00 re PR tree-optimization/51580 (segfault during loop vectorization at -O3)
PR tree-optimization/51580
	* gnat.dg/specs/loop_optimization1.ads: New test.
	* gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper.

From-SVN: r182491
2011-12-19 19:17:10 +00:00
Quentin Neill
f7593cb4c6 re PR target/48743 (-march=native mis-detects AMD K6-2+ / K6-3 as Athlon - compiled C fails with "illegal instruction")
2011-12-19  Quentin Neill  <quentin.neill@amd.com>
2011-12-19  Quentin Neill  <quentin.neill@amd.com>

	PR target/48743
	* config/i386/driver-i386.c (host_detect_local_cpu): Also check
	family to distinguish PROCESSOR_ATHLON.

From-SVN: r182489
2011-12-19 17:57:32 +00:00
Richard Guenther
7e54c6084d re PR lto/51573 (ICE (segfault) in lto_varpool_encoder_encode_initializer_p)
2011-12-19  Richard Guenther  <rguenther@suse.de>

	PR lto/51573
	* streamer-hooks.h (struct streamer_hooks): Add second
	ref_p parameter to write_tree.
	(stream_write_tree): Adjust.
	(stream_write_tree_shallow_non_ref): New define.
	* lto-streamer.h (lto_output_tree): Adjust.
	* lto-streamer-out.c (lto_output_tree): Likewise.
	* tree-streamer-out.c (streamer_write_chain): Only
	force the immediate tree to be streamed as non-reference.

	* gcc.dg/lto/20111207-2_0.c: Adjust.
	* g++.dg/lto/pr51573-1_0.C: New testcase.

From-SVN: r182487
2011-12-19 15:57:02 +00:00
Jakub Jelinek
23a3541f27 re PR c++/51619 ([c++0x] [4.6 Regression] ICE with array class member)
PR c++/51619
	* semantics.c (cxx_eval_vec_init_1): If init is NULL for
	multidimensional array, just set eltinit to NULL_TREE.

	* g++.dg/cpp0x/pr51619.C: New test.

From-SVN: r182485
2011-12-19 16:38:06 +01:00
Tobias Burnus
cd99c23ca4 re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * match.c (gfc_match_select_type): Handle
        scalar polymophic coarrays.
        (select_type_set_tmp, ): Ditto; avoid segfault if !class_ok.
        * primary.c (gfc_match_rvalue): Avoid segfault if !class_ok.
        * resolve.c (resolve_select_type): Ditto.
        (resolve_assoc_var): Fix setting the TARGET attribute for
        polymorphic selectors which are pointers.

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

        PR fortran/51605
        * gfortran.dg/select_type_25.f90: New.

From-SVN: r182484
2011-12-19 16:30:23 +01:00
Martin Jambor
6a9ceb1703 re PR tree-optimization/51583 (One more missing force_gimple_operand in SRA)
2011-12-19  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/51583
	* tree-sra.c (load_assign_lhs_subreplacements): Call
	force_gimple_operand_gsi when necessary also in case of no
	corresponding replacement on the RHS.

	* testsuite/gcc.dg/tree-ssa/pr51583.c: New test.

From-SVN: r182483
2011-12-19 15:33:18 +01:00
Jakub Jelinek
a1a6c5b26a gimple.h (gimplify_seq_add_stmt): Rename to...
* gimple.h (gimplify_seq_add_stmt): Rename to...
	(gimple_seq_add_stmt_without_update): ... this.
	* gimplify.c (gimplify_seq_add_stmt): Rename to...
	(gimple_seq_add_stmt_without_update): ... this.
	(gimplify_seq_add_stmt): New inline wrapper for it.
	* tree-vect-patterns.c (append_pattern_def_seq): Use
	gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.

	* cp-gimplify.c (gimplify_must_not_throw_expr): Use
	gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.

From-SVN: r182482
2011-12-19 15:25:28 +01:00
Jakub Jelinek
77753f4dae re PR tree-optimization/51596 (ICE: verify_flow_info failed: BB 6 can not throw but has an EH edge with -fnon-call-exceptions)
PR tree-optimization/51596
	* tree-cfg.c (replace_uses_by): Call gimple_purge_dead_eh_edges
	when needed.

	* g++.dg/opt/pr51596.C: New test.

From-SVN: r182481
2011-12-19 15:24:29 +01:00
Jakub Jelinek
083481d85c re PR middle-end/51590 (ICE in gsi_for_stmt, at gimple-iterator.c:560)
PR middle-end/51590
	PR tree-optimization/51606
	* tree-vect-patterns.c (append_pattern_def_seq, new_pattern_def_seq):
	New inline functions.
	(vect_recog_over_widening_pattern,
	vect_recog_vector_vector_shift_pattern,
	vect_recog_sdivmod_pow2_pattern, vect_recog_mixed_size_cond_pattern,
	adjust_bool_pattern_cast, vect_recog_bool_pattern): Use them.

	* gcc.dg/vect/pr51590.c: New test.

From-SVN: r182480
2011-12-19 15:22:29 +01:00
Richard Guenther
4acd1c8460 re PR bootstrap/51572 (LTO bootstrap failed with bootstrap-profiled)
2011-12-19  Richard Guenther  <rguenther@suse.de>

	PR lto/51572
	* tree.c (free_lang_data_in_type): Do not unlink TYPE_DECL
	from TYPE_FIELDS.
	(find_decls_types_r): Walk TYPE_DECLs in TYPE_FIELDS.
	* tree-streamer-out.c (write_ts_field_decl_tree_pointers): Do
	not stream TREE_CHAIN.
	(write_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
	using streamer_write_chain.
	* tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
	Do not stream TREE_CHAIN.
	(lto_input_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
	using streamer_read_chain.
	* gimple-streamer-in.c (input_gimple_stmt): Skip non-FIELD_DECLs.
	* gimple.c (gimple_canonical_types_compatible_p): Properly
	handle trailing non-FIELD_DECLs in TYPE_FIELDS.

	* g++.dg/lto/pr51572-2_0.C: New testcase.

From-SVN: r182479
2011-12-19 13:37:06 +00:00
Andreas Schwab
095af58f2c Check for warning flags without no- prefix
config/:
	PR bootstrap/51388
	* warnings.m4 (ACX_PROG_CC_WARNING_OPTS)
	(ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Run the test without the
	no- prefix.
fixincludes/:
	* configure: Regenerate.
gcc/:
	* configure: Regenerate.
libcpp/:
	* configure: Regenerate.
libdecnumber/:
	* configure: Regenerate.
libiberty/:
	* configure: Regenerate.
lto-plugin/:
	* configure: Regenerate.

From-SVN: r182478
2011-12-19 13:12:26 +00:00
Bernd Schmidt
c8a89d2a41 emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for partial integer modes.
* emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for
	partial integer modes.

From-SVN: r182477
2011-12-19 12:39:34 +00:00
Andreas Schwab
6a2b269b06 re PR target/51532 (Invalid Code Generated for cpu32.)
PR target/51532
* config/m68k/m68k.h (FL_CAS, TARGET_CAS): Define.
* config/m68k/m68k.c (FL_FOR_isa_20): Add FL_CAS.
* config/m68k/sync.md: Use TARGET_CAS instead of (TARGET_68020 ||
TARGET_68040).

From-SVN: r182475
2011-12-19 10:14:13 +00:00
Dodji Seketeli
7063212f9a PR c++/51477 - ICE with invalid NSDMI
gcc/cp/

	PR c++/51477
	* search.c (lookup_member): Get out early on invalid base type.

gcc/testsuite/

	PR c++/51477
	* g++.dg/cpp0x/nsdmi6.C: New test.

From-SVN: r182474
2011-12-19 10:47:46 +01:00
Tobias Burnus
fac665b24a check.c (coarray_check): Add class ref if needed.
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        * check.c (coarray_check): Add class ref if needed.
        * resolve.c (resolve_fl_var_and_proc,
        resolve_fl_derived0, resolve_symbol): Fix checking
        for BT_CLASS.

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

        * gfortran.dg/coarray_poly_3.f90: New.
        * coarray/poly_run_1.f90: Enable some previously commented code.

From-SVN: r182471
2011-12-19 09:15:47 +01:00
Jason Merrill
37ef545a76 re PR c++/51489 (constexpr not working consistently)
PR c++/51489
	* semantics.c (cxx_eval_outermost_constant_expr): Check for
	conversion from pointer to integer here.
	(cxx_eval_constant_expression) [NOP_EXPR]: Not here.

From-SVN: r182470
2011-12-19 00:57:52 -05:00
GCC Administrator
a733dd3ded Daily bump.
From-SVN: r182466
2011-12-19 00:18:33 +00:00