1. 30 Aug, 2011 10 commits
    • i386.c (get_pc_thunk_name): Change prefix to "__x86.get_pc_thunk". · 070f36cf
      	* config/i386/i386.c (get_pc_thunk_name): Change prefix to
      	"__x86.get_pc_thunk".
      his line, and those below, will be ignored--
      
      M    ChangeLog
      M    config/i386/i386.c
      
      From-SVN: r178297
      Bernd Schmidt committed
    • sem_ch6.adb (Check_Return_Subtype_Indication): Issue error if the return object… · 6cce2156
      sem_ch6.adb (Check_Return_Subtype_Indication): Issue error if the return object has an anonymous access type and the...
      
      2011-08-30  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_ch6.adb (Check_Return_Subtype_Indication): Issue error if the
      	return object has an anonymous access type and the function's type is
      	a named access type.
      	* sem_ch8.adb (Analyze_Object_Renaming): Suppress error about renaming
      	conversions on implicit conversions, since such conversions can occur
      	for anonymous access cases due to expansion. Issue error for attempt
      	to rename an anonymous expression as an object of a named access type.
      	* sem_res.ads (Valid_Conversion): Add defaulted parameter Report_Errs,
      	to indicate whether this function should report errors on invalid
      	conversions.
      	* sem_res.adb (Resolve): For Ada 2012, in the case where the type of
      	the expression is of an anonymous access type and the expected type is
      	a named general access type, rewrite the expression as a type
      	conversion, unless this is an expression of a membership test.
      	(Valid_Conversion.Error_Msg_N): New procedure that conditions the
      	calling of Error_Msg_N on new formal Report_Errs.
      	(Valid_Conversion.Error_Msg_NE): New procedure that conditions the
      	calling of Error_Msg_NE on new formal Report_Errs.
      	(Valid_Conversion): Move declaration of this function to the package
      	spec, to allow calls from membership test processing. For Ada 2012,
      	enforce legality restrictions on implicit conversions of anonymous
      	access values to general access types, disallowing such conversions in
      	cases where the expression has a dynamic accessibility level (access
      	parameters, stand-alone anonymous access objects, or a component of a
      	dereference of one of the first two cases).
      	* sem_type.adb (Covers): For Ada 2012, allow an anonymous access type
      	in the context of a named general access expected type.
      	* exp_ch4.adb Add with and use of Exp_Ch2.
      	(Expand_N_In): Add processing for membership tests applied to
      	expressions of an anonymous access type. First, Valid_Conversion is
      	called to check whether the test is statically False, and then the
      	conversion is expanded to test that the expression's accessibility
      	level is no deeper than that of the tested type. In the case of
      	anonymous access-to-tagged types, a tagged membership test is applied
      	as well.
      	(Tagged_Membership): Extend to handle access type cases, applying the
      	test to the designated types.
      	* exp_ch6.adb (Expand_Call): When creating an extra actual for an
      	accessibility level, and the actual is a 'Access applied to a current
      	instance, pass the accessibility level of the type of the current
      	instance rather than applying Object_Access_Level to the prefix. Add a
      	??? comment, since this level isn't quite right either (will eventually
      	need to pass an implicit level parameter to init procs).
      
      From-SVN: r178296
      Gary Dismukes committed
    • genautomata.c (NO_COMB_OPTION): New macro. · e12da141
      	* genautomata.c (NO_COMB_OPTION): New macro.
      	(no_comb_flag): New static variable.
      	(gen_automata_option): Handle NO_COMB_OPTION.
      	(comb_vect_p): False if no_comb_flag.
      	(add_vect): Move computation of min/max values.  Return early if
      	no_comb_flag.
      	* doc/md.texi (automata_option): Document no-comb-vect.
      
      From-SVN: r178295
      Bernd Schmidt committed
    • [multiple changes] · 747de90b
      2011-08-30  Bob Duff  <duff@adacore.com>
      
      	* s-taskin.ads: Minor comment fix.
      
      2011-08-30  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Check_Parameterless_Call): If the node is a selected
      	component and the selector is a dispatching operation, check if it is
      	a prefixed call before rewriting as a parameterless function call.
      
      From-SVN: r178294
      Arnaud Charlet committed
    • fix -fbranch-probabilities and adjust testsuite · cb89a171
      From-SVN: r178289
      Christian Bruel committed
    • error_constants.h: Fix commas. · 54e776dc
      2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* config/os/mingw32/error_constants.h: Fix commas.
      
      From-SVN: r178286
      Paolo Carlini committed
    • re PR c++/50224 ([C++0x] bogus unused parameter warning (it is referenced in lambda)) · 809fbdce
      	PR c++/50224
      	* semantics.c (finish_id_expression): Mark captured variables used.
      
      From-SVN: r178277
      Jason Merrill committed
    • re PR c++/50207 (G++ segv's on reduced test case) · e7b6bcf3
      	PR c++/50207
      	* class.c (finish_struct_1): Complain if the first field is
      	artificial.
      
      Co-Authored-By: Jason Merrill <jason@redhat.com>
      
      From-SVN: r178276
      Jakub Jelinek committed
    • re PR c++/50209 ([C++0x] Braced-init-lists are rejected as function default arguments) · 25dd2fdd
      	PR c++/50209
      	Core DR 994
      	* parser.c (cp_parser_default_argument): Use
      	cp_parser_initializer_clause.
      	(cp_parser_late_parsing_default_args): Likewise.
      
      From-SVN: r178275
      Jason Merrill committed
    • Daily bump. · f767e244
      From-SVN: r178269
      GCC Administrator committed
  2. 29 Aug, 2011 30 commits
    • constexpr.cc: Add. · c419868b
      2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
      
      From-SVN: r178265
      Benjamin Kosnik committed
    • Lower calls to bound method expressions. · 1bbf7edb
      From-SVN: r178264
      Ian Lance Taylor committed
    • Don't lower blocks twice. · 27311334
      From-SVN: r178263
      Ian Lance Taylor committed
    • re PR fortran/50225 ([OOP] The allocation status for polymorphic allocatable… · 7a3eeb85
      re PR fortran/50225 ([OOP] The allocation status for polymorphic allocatable function results is not set properly)
      
      2011-08-29  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/50225
      	* trans-decl.c (gfc_generate_function_code): Nullify polymorphic
      	allocatable function results.
      
      2011-08-29  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/50225
      	* gfortran.dg/class_result_1.f03: New.
      
      From-SVN: r178262
      Janus Weil committed
    • Change default for -msave-toc-indirect · 3167ec4a
      From-SVN: r178261
      Michael Meissner committed
    • Change default for -msave-toc-indirect · 4aaf1d15
      From-SVN: r178260
      Michael Meissner committed
    • Makefile.in (../stamp-gnatlib1-$(RTSDIR)): Copy tsystem.h into $(RTSDIR) instead of rts. · cdc4cc65
      	* gcc-interface/Makefile.in (../stamp-gnatlib1-$(RTSDIR)): Copy
      	tsystem.h into $(RTSDIR) instead of rts.
      
      From-SVN: r178259
      Jakub Jelinek committed
    • gthr-posix.h (__gthread_active_p): Do not use preprocessor conditionals and… · e621f530
      gthr-posix.h (__gthread_active_p): Do not use preprocessor conditionals and comments inside macro arguments.
      
      	* gthr-posix.h (__gthread_active_p): Do not use preprocessor
      	conditionals and comments inside macro arguments.
      
      From-SVN: r178258
      Jakub Jelinek committed
    • configure: Regenerated. · edf2239b
      	* configure: Regenerated.
      	* config.h.in: Regenerated.
      	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
      	checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
      	EWOULDBLOCK.
      	*  config/os/mingw32/error_constants.h (errc): Add
      	enumerator values no_child_process, no_space_on_device,
      	not_supported, operation_not_permitted, operation_would_block,
      	timed_out, and value_too_large,
      
      From-SVN: r178257
      Kai Tietz committed
    • [multiple changes] · 226a7fa4
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch10.adb, a-coorse.adb, exp_dist.adb, exp_ch3.adb: Minor
      	reformatting.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* alfa.ads (Name_Of_Heap_Variable): New constant name.
      	* lib-xref-alfa.adb, lib-xref.adb, lib-xref.ads (Drefs): New global
      	table to hold dereferences.
      	(Add_ALFA_Xrefs): Take into account dereferences as special
      	reads/writes to the variable "HEAP".
      	(Enclosing_Subprogram_Or_Package): Move subprogram here.
      	(Generate_Dereference): New procedure to store a read/write dereferencew
      	in the table Drefs.
      	* put_alfa.adb (Put_ALFA): Use different default than (0,0) used for
      	the special "HEAP" var.
      	* sem_ch4.adb (Analyze_Explicit_Dereference): Store read dereference
      	in ALFA mode.
      	* sem_util.adb (Note_Possible_Modification): Store write dereference
      	in ALFA mode.
      
      From-SVN: r178252
      Arnaud Charlet committed
    • exp_ch3.adb (Freeze_Type): Generate an accessibility check which ensures that… · dfbcb149
      exp_ch3.adb (Freeze_Type): Generate an accessibility check which ensures that the level of the subpool...
      
      2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch3.adb (Freeze_Type): Generate an accessibility check which
      	ensures that the level of the subpool access type is not deeper than
      	that of the pool object.
      	* sem_util.adb (Object_Access_Level): Expand to handle defining
      	identifiers.
      	* sem_res.adb (Resolve_Allocator): Add a guard to avoid examining the
      	subpool handle name of a rewritten allocator.
      
      From-SVN: r178250
      Hristian Kirtchev committed
    • [multiple changes] · 1df4f514
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* impunit.adb, exp_ch4.adb, s-finmas.adb: Minor reformatting.
      
      2011-08-29  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_dist.adb (TC_Rec_Add_Process_Element): For a choice with multiple
      	values, we generate multiple triples of parameters in the TypeCode.
      	Bump Choice_Index for each such triple so that a subsequent default
      	choice is associated with the correct index in the typecode.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-cdlili.adb (Iterate): Initialize properly an iterator over a null
      	container.
      	(First, Last): Handle properly an iterator over a null container.
      
      2011-08-29  Bob Duff  <duff@adacore.com>
      
      	* sem_ch10.adb (Analyze_With_Clause,Install_Withed_Unit): Abandon
      	processing if we run across a node with no Scope. This can happen if
      	we're with-ing an library-level instance, and that instance got errors
      	that caused "instantiation abandoned".
      	* sem_util.adb (Unit_Declaration_Node): Make it more robust, by raising
      	an exception instead of using Assert, so it won't go into an infinite
      	loop, even when assertions are turned off.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-coorse.adb: Proper handling of empty ordered sets.
      
      From-SVN: r178249
      Arnaud Charlet committed
    • [multiple changes] · 14f0f659
      2011-08-29  Johannes Kanig  <kanig@adacore.com>
      
      	* debug.adb: Add comments.
      
      2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* impunit.adb, s-stposu.adb, s-stposu.ads, exp_ch4.adb,
      	s-finmas.adb, s-finmas.ads: Redo previous change.
      
      From-SVN: r178247
      Arnaud Charlet committed
    • [multiple changes] · 8027b455
      2011-08-29  Thomas Quinot  <quinot@adacore.com>
      
      	* a-except.adb, a-except-2005.adb: Minor comment rewording and
      	reformatting.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch3.adb (Array_Type_Declaration): Remove insertion of
      	declaration for Itypes in Alfa mode.
      
      From-SVN: r178246
      Arnaud Charlet committed
    • [multiple changes] · d85fd922
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* a-cdlili.ads, a-coinve.ads, a-coorma.adb, a-coorma.ads, s-tassta.adb,
      	a-cborma.adb, a-cborma.ads, a-cohama.ads, a-coorse.ads, a-cbhama.ads,
      	a-cborse.ads, a-cobove.adb, a-cobove.ads, a-cbhase.ads: Minor
      	reformatting.
      
      2011-08-29  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch7.adb, exp_ch7.ads (Build_Exception_Handler): Move its spec to
      	package spec.
      	* exp_intr.adb (Expand_Unc_Deallocation): Use Build_Exception_Handler.
      	* a-except.adb, a-except-2005.adb (Rcheck_22): Do not defer aborts
      	while raising PE.
      
      From-SVN: r178245
      Arnaud Charlet committed
    • [multiple changes] · fd3d2680
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* a-cbhama.adb, a-cbhama.ads: Minor reformatting.
      
      2011-08-29  Javier Miranda  <miranda@adacore.com>
      
      	* sem_ch8.adb (Analyze_Subprogram_Renaming): Complete support for
      	renamings of formal subprograms when the actual for a formal type is
      	class-wide.
      
      From-SVN: r178244
      Arnaud Charlet committed
    • a-cbhama.ads, [...] (Move): Clear Source following assignment to Target. · dfbf013f
      2011-08-29  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cbhama.ads, a-cbhase.ads (Move): Clear Source following assignment
      	to Target.
      
      2011-08-29  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cborma.ads, a-cborse.ads (Cursor): Default-initialize all
      	components of record type.
      	* a-cborma.adb, a-cborse.adb (Move): Clear Source following assignmentw
      	to Target.
      
      From-SVN: r178243
      Matthew Heaney committed
    • a-cbhama.adb, [...]: Add iterator machinery to container packages. · a6dd3a54
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-cbhama.adb, a-cbhama.ads, a-cborma.adb, a-cborma.ads, a-cobove.adb,
      	a-cobove.ads, a-coorma.adb, a-coorma.ads: Add iterator machinery to
      	container packages.
      
      From-SVN: r178242
      Ed Schonberg committed
    • [multiple changes] · c54796e0
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, sem_util.adb, gnat1drv.adb, s-parint.ads: Minor
      	reformatting.
      
      2011-08-29  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cbhama.ads, a-cbhase.ads (Cursor): Default-initialize all
      	components of record type.
      
      2011-08-29  Bob Duff  <duff@adacore.com>
      
      	* s-tassta.adb (Task_Wrapper): Handle and ignore exceptions propagated
      	by the termination handler.
      
      From-SVN: r178241
      Arnaud Charlet committed
    • [multiple changes] · 9fd9d2be
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch3.adb (Array_Type_Declaration): Create declarations for Itypes
      	created in Alfa mode, instead of inserting artificial declarations of
      	non-Itypes in the tree.
      	* sem_util.adb, sem_util.ads (Itype_Has_Declaration): New function to
      	know if an Itype has a corresponding declaration, as defined in
      	itypes.ads.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* gnat1drv.adb: Minor rewrite.
      
      2011-08-29  Bob Duff  <duff@adacore.com>
      
      	* s-tasuti.adb (Make_Passive): Work around race condition in
      	Make_Independent, which can cause Wait_Count to be zero. So instead of
      	asserting that Wait_Count > 0, and then decrementing it, decrement it
      	only if Wait_Count > 0.
      	* s-taskin.ads (Wait_Count, Alive_Count, Awake_Count): All of these
      	should be nonnegative, so declare them Natural instead of Integer.
      
      From-SVN: r178240
      Arnaud Charlet committed
    • [multiple changes] · 833eaa8a
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch5.adb, sem_ch3.adb, a-cihama.adb, a-cihama.ads, exp_ch7.adb,
      	sem_ch5.adb, a-ciorse.adb, a-ciorse.ads, sem_ch12.adb, a-cidlli.adb,
      	a-cidlli.ads, sem_util.adb, sem_res.adb, gnat1drv.adb, a-except.adb,
      	a-except.ads, a-except-2005.ads, sem_ch4.adb, exp_disp.adb,
      	exp_aggr.adb, sem_ch13.adb, par-ch3.adb: Minor reformatting.
      
      2011-08-29  Tristan Gingold  <gingold@adacore.com>
      
      	* s-auxdec-vms-alpha.adb: Add comments, remove some HT before labels.
      
      2011-08-29  Vadim Godunko  <godunko@adacore.com>
      
      	* s-parint.ads: Minor comment clarification.
      
      2011-08-29  Vincent Celier  <celier@adacore.com>
      
      	* prj.adb (Initialize): Make sure that new reserved words after Ada 95
      	may be used as identifiers.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-coinho.ads: Minor reformating.
      
      From-SVN: r178239
      Arnaud Charlet committed
    • [multiple changes] · 3a613a36
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_Iterator_Loop): Handle properly a loop over a
      	container of a derived type.
      
      2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* impunit.adb, s-stposu.adb, s-stposu.ads, exp_ch4.adb, s-finmas.adb,
      	s-finmas.ads: Revert previous change.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-cidlli.adb, a-cidlli.ads, a-cihama.adb, a-cihama.ads,
      	a-ciorse.adb, a-ciorse.ads: Add iterator machinery to containers.
      
      From-SVN: r178237
      Arnaud Charlet committed
    • [multiple changes] · 14848f57
      2011-08-29  Pascal Obry  <obry@adacore.com>
      
      	* exp_disp.adb: Minor comment fix.
      	(Make_Disp_Asynchronous_Select_Body): Properly initialize out parameters
      	to avoid warnings when compiling with -Wall.
      	(Make_Disp_Conditional_Select_Body): Likewise.
      	(Make_Disp_Timed_Select_Body): Likewise.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Analyze_Formal_Subprogram_Declaration): If default is
      	an entity name, generate reference for it.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_Iterator_Loop): Uniform handling of "X of S"
      	iterator form.
      	* sem_util.adb (Is_Iterator, Is_Reversible_Iterator): Yield True for
      	the class-wide type.
      	* sem_ch5.adb: Move some rewriting to the expander, where it belongs.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch8.adb (Check_Constrained_Object): Do not create an actual
      	subtype for an object whose type is an unconstrained union.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* par-ch3.adb (P_Array_Type_Definiation, P_Component_Items): "aliased"
      	is allowed in a component definition, by AI95-406.
      
      2011-08-29  Matthew Heaney  <heaney@adacore.com>
      
      	* a-chtgbo.adb (Generic_Iteration): Use correct overloading of Next.
      
      2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* a-except-2005.adb: Alphabetize all routines.
      	(Triggered_By_Abort): New routine.
      	* a-except-2005.ads (Triggered_By_Abort): New routine.
      	* a-except.adb Alphabetize all routines.
      	(Triggered_By_Abort): New routine.
      	* a-except.ads (Triggered_By_Abort): New routine.
      	* exp_ch7.adb: Update all comments involving the detection of aborts in
      	finalization code.
      	(Build_Object_Declarations): Do not generate code to detect the
      	presence of an abort at the start of finalization code, use a runtime
      	routine istead.
      	* rtsfind.ads: Add RE_Triggered_By_Abort to tables RE_Id and
      	RE_Unit_Table.
      	* sem_res.adb (Resolve_Allocator): Emit a warning when attempting to
      	allocate a task on a subpool.
      	* s-stposu.adb: Add library-level flag Finalize_Address_Table_In_Use.
      	The flag disables all actions related to the maintenance of
      	Finalize_Address_Table when subpools are not in use.
      	(Allocate_Any_Controlled): Signal the machinery that subpools are in
      	use.
      	(Deallocate_Any_Controlled): Do not call Delete_Finalize_Address which
      	performs costly task locking when subpools are not in use.
      
      From-SVN: r178236
      Arnaud Charlet committed
    • [multiple changes] · 57a8057a
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* gnat1drv.adb (Adjust_Global_Switches): Restore expansion of tagged
      	types and dispatching calls in Alfa mode.
      	* lib-xref-alfa.adb (Collect_ALFA): Rewrite computation of
      	correspondance between body and spec scopes, to reuse utility functions
      	(Traverse_Declarations_Or_Statements): Protect access to body for stub
      	by testing the presence of the library unit for the body
      	* sem_ch6.adb (Set_Actual_Subtypes): take into account that in Alfa
      	mode the expansion of accept statements is skipped
      	* sem_util.adb, sem_util.ads (Unique_Entity): New function returning
      	the unique entity corresponding to the one returned by
      	Unique_Defining_Entity applied to the enclosing declaration of the
      	argument.
      
      2011-08-29  Bob Duff  <duff@adacore.com>
      
      	* treepr.ads: Improve debugging facilities. pn(x) no longer crashes in
      	gdb when x is not a node (it can be a node list, name_id, etc). pp is
      	an alias for pn. ppp is an alias for pt.
      
      2011-08-29  Javier Miranda  <miranda@adacore.com>
      
      	* exp_aggr.adb (Expand_Record_Aggregate): Use the top-level enclosing
      	aggregate to take a consistent decision on the need to convert into
      	assignments aggregates that initialize constant objects.
      
      2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch4.adb (Expand_Allocator_Expression): Add a call to
      	Build_Allocate_Deallocate_Proc in order to handle allocation of
      	non-controlled objects on subpools.
      	* impunit.adb: Remove s-finmas and s-spsufi since they were never meant
      	to be end-user visible.
      	* s-finmas.adb: Add with and use clause for System.HTable.
      	Add an instantiation of Simple_HTable which provides a mapping between
      	the address of a controlled object and the corresponding
      	Finalize_Address used to clean up the object. The table is used when a
      	master is operating in heterogeneous mode.
      	(Attach): Explain why the input node is not verified on being already
      	attached.
      	(Delete_Finalize_Address): New routine.
      	(Detach): Add pragma Assert which ensures that a node is already
      	attached.
      	(Finalize): Add local variable Cleanup. Rewrite the iteration scheme
      	since nodes are no longer removed on traversal. Explain why node
      	detachment is undesirable in this case.
      	(Get_Finalize_Address): New routine.
      	(Hash): New routine.
      	(Is_Empty_List): Removed.
      	(pm): Renamed to Print_Master. Add output for discriminant
      	Is_Homogeneous.
      	Comment reformatting.
      	(Set_Finalize_Address (Address, Finalize_Address_Ptr)): New routine.
      	* s-finmas.ads: Various comments additions / improvements.
      	Type Finalization_Master has a discriminant which determines the mode of
      	operation.
      	(Delete_Finalize_Address): New routine.
      	(Get_Finalize_Address): New routine.
      	(pm): Renamed to Print_Master.
      	(Set_Finalize_Address (Address, Finalize_Address_Ptr)): New routine.
      	* s-stposu.adb: Add with clause for System.Address_Image; Add with and
      	use clause for System.IO.
      	(Allocate_Any_Controlled): Add machinery to set TSS primitive
      	Finalize_Address depending on the mode of allocation and the mode of
      	the master.
      	(Deallocate_Any_Controlled): Remove the relation pair object -
      	Finalize_Address regardless of the master mode. Add comment explaining
      	the reason.
      	(Detach): Ensure that fields Prev and Next are null after detachment.
      	(Finalize_Pool): Remove local variable Next_Ptr. Rewrite the iteration
      	scheme to check whether the list of subpools is empty. There is no
      	longer need to store the next subpool or advance the current pointer.
      	(Is_Empty_List): New routine.
      	(Print_Pool): New routine.
      	(Print_Subpool): New routine.
      	* s-stposu.ads: Various comments additions / improvements.
      	Field Master of type Root_Subpool is now a heterogeneous collection.
      	(Print_Pool): New routine.
      	(Print_Subpool): New routine.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_N_Iterator_Loop): Implement Ada2012 loop iterator
      	forms, using aspects of container types.
      	* sem_ch3.adb (Find_Type_Name): Preserve Has_Delayed_Aspects and
      	Has_Implicit_Dereference flags, that may be set on the partial view.
      	* sem_ch4.adb (Process_Overloaded_Indexed_Component): Prefix may be a
      	container type with an indexing aspect.
      	(Analyze_Quantified_Expression): Analyze construct with expansion
      	disabled, because it will be rewritten as a loop during expansion.
      	(Try_Container_Indexing): The prefix itself may be a container type
      	with an indexing aspect, as with a vector of vectors.
      	* sem_ch5.adb (Analyze_Iteration_Scheme): In a generic context, analyze
      	the original doamin of iteration, for name capture.
      	(Analyze_Iterator_Specification): If the domain is an expression that
      	needs finalization, create a separate declaration for it.
      	For an iterator with "of" retrieve default iterator info from aspect of
      	container type. For "in" iterator, retrieve type of Iterate function.
      	* sem_ch13.adb (Check_Iterator_Function): Fix typo.
      	(Check_Aspect_At_End_Of_Declaration): Make type unfrozen before
      	analysis, to prevent spurious errors about late attributes.
      	* sprint.adb: Handle quantified expression with either loop or iterator
      	specification.
      	* a-convec.ads, a-convec.adb: Iterate function returns a reversible
      	iterator.
      
      From-SVN: r178235
      Arnaud Charlet committed
    • 2011-08-29 Paolo Carlini <paolo.carlini@oracle.com> · 9fdf1422
      	* Tweak last ChangeLog entry.
      
      From-SVN: r178234
      Paolo Carlini committed
    • [multiple changes] · ddf67a1d
      2011-08-29  Vincent Celier  <celier@adacore.com>
      
      	* make.adb (Scan_Make_Arg): Take any option as is in packages Compiler,
      	Binder or Linker of the main project file.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* inline.adb (Add_Scopes_To_Clean): Exclude any entity within a generic
      	unit.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch9.adb: Partial revert of previous change for Alfa mode
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch11.adb: Minor expansion of comment.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-alfa.adb (Add_ALFA_Scope): Treat generic entities.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Resolve_Arithmetic_Op): If the node has a universal
      	interpretation, set the type before resolving the operands, because
      	legality checks on an exponention operand need to know the type of the
      	context.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Analyze_Package_Instantiation): Do not set delayed
      	cleanups on a master if the instance is within a generic unit.
      	Complement to the corresponding fix to inline.adb for K520-030.
      
      2011-08-29  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch7.adb (Build_Raise_Statement): Raise PE instead of the current
      	occurrence.
      	* exp_intr.adb: Minor comment fix.
      
      2011-08-29  Bob Duff  <duff@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Fix cases where
      	Delay_Required was used as an uninitialized variable.
      
      From-SVN: r178233
      Arnaud Charlet committed
    • a-cdlili.adb, [...]: Minor reformatting. · 690943fc
      2011-08-29  Robert Dewar  <dewar@adacore.com>
      
      	* a-cdlili.adb, a-cdlili.ads, a-coinve.adb, a-coinve.ads,
      	sem_util.adb, sem_util.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb,
      	a-coorse.ads, aspects.ads, sem_ch8.adb: Minor reformatting.
      
      From-SVN: r178232
      Robert Dewar committed
    • re PR libstdc++/50118 (node-based containers cannot use allocators with explicit… · ff15f019
      re PR libstdc++/50118 (node-based containers cannot use allocators with explicit constructor template)
      
      2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/50118
      	* include/bits/stl_list.h (_List_base<>::
      	_List_base(const allocator_type&)): Remove.
      	(_List_base<>::_List_base(const _Node_alloc_type&)): Add.
      	(list<>:list(const allocator_type&), list(size_type, const
      	value_type&, const allocator_type&),
      	list(initializer_list<, const allocator_type&),
      	list(_InputIterator, _InputIterator, const allocator_type&),
      	insert(iterator, size_type, const value_type&),
      	insert(iterator, _InputIterator, _InputIterator)): Adjust.
      	* include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
      	const allocator_type&)): Fix.
      	* include/bits/stl_map.h (map<>::map(const _Compare&,
       	const allocator_type&), map(initializer_list<>,
      	const _Compare&, const allocator_type&), map(_InputIterator,
      	_InputIterator, const _Compare&, const allocator_type&),
      	get_allocator): Adjust.
      	* include/bits/stl_set.h (set<>::set(const _Compare&,
       	const allocator_type&), set(initializer_list<>,
      	const _Compare&, const allocator_type&), set(_InputIterator,
      	_InputIterator, const _Compare&, const allocator_type&),
      	get_allocator): Likewise.
      	* include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
       	const allocator_type&), multimap(initializer_list<>,
      	const _Compare&, const allocator_type&), multimap(_InputIterator,
      	_InputIterator, const _Compare&, const allocator_type&),
      	get_allocator): Likewise.
      	* include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
       	const allocator_type&), multiset(initializer_list<>,
      	const _Compare&, const allocator_type&), multiset(_InputIterator,
      	_InputIterator, const _Compare&, const allocator_type&),
      	get_allocator): Likewise.
      	* include/bits/forward_list.h (_Fwd_list_base<>::
      	_Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
      	const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
      	Remove.
      	(_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
      	_Fwd_list_base(const _Fwd_list_base&,
      	const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
      	const _Node_alloc_type&)): Add.
      	(forward_list<>::forward_list(const _Alloc&),
      	forward_list(const forward_list&, const _Alloc&),
      	forward_list(forward_list&&, const _Alloc&),
      	forward_list(size_type, const _Tp&, const _Alloc&),
      	forward_list(_InputIterator, _InputIterator, const _Alloc&),
      	forward_list(std::initializer_list<>, const _Alloc&),
      	get_allocator): Adjust.
      	* include/bits/forward_list.tcc
      	* testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
      	* testsuite/23_containers/unordered_map/requirements/
      	explicit_instantiation/5.cc: New.
      	* testsuite/23_containers/multimap/requirements/
      	explicit_instantiation/5.cc: Likewise.
      	* testsuite/23_containers/multimap/requirements/
      	explicit_instantiation/5_c++0x.cc: Likewise.
      	* testsuite/23_containers/set/requirements/explicit_instantiation/
      	5.cc: Likewise.
      	* testsuite/23_containers/set/requirements/explicit_instantiation/
      	5_c++0x.cc: Likewise.
      	* testsuite/23_containers/unordered_multimap/requirements/
      	explicit_instantiation/5.cc: Likewise.
      	* testsuite/23_containers/forward_list/requirements/
      	explicit_instantiation/5.cc: Likewise.
      	* testsuite/23_containers/unordered_set/requirements/
      	explicit_instantiation/5.cc: Likewise.
      	testsuite/23_containers/multiset/requirements/explicit_instantiation/
      	5.cc: Likewise.
      	* testsuite/23_containers/multiset/requirements/
      	explicit_instantiation/5_c++0x.cc: Likewise.
      	* testsuite/23_containers/list/requirements/explicit_instantiation/
      	5_c++0x.cc: Likewise.
      	* testsuite/23_containers/list/requirements/explicit_instantiation/
      	5.cc: Likewise.
      	* testsuite/23_containers/unordered_multiset/requirements/
      	explicit_instantiation/5.cc: Likewise.
      	* testsuite/23_containers/map/requirements/explicit_instantiation/
      	5.cc: Likewise.
      	* testsuite/23_containers/map/requirements/explicit_instantiation/
      	5_c++0x.cc: Likewise.
      	* testsuite/23_containers/forward_list/requirements/dr438/
      	assign_neg.cc: Adjust dg-error line number.
      	* testsuite/23_containers/forward_list/requirements/dr438/
      	insert_neg.cc: Likewise.
      	* testsuite/23_containers/forward_list/requirements/dr438/
      	constructor_1_neg.cc: Likewise.
      	* testsuite/23_containers/forward_list/requirements/dr438/
      	constructor_2_neg.cc: Likewise.
      	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
      	Likewise.
      	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
      	Likewise.
      	* testsuite/23_containers/list/requirements/dr438/
      	constructor_1_neg.cc: Likewise.
      	* testsuite/23_containers/list/requirements/dr438/
      	constructor_2_neg.cc: Likewise.
      
      From-SVN: r178230
      Paolo Carlini committed
    • system-freebsd-x86_64.ads (Backend_Overflow_Checks): Set true True. · 9f0ee988
      2011-08-29  Thomas Quinot  <quinot@adacore.com>
      
      	* system-freebsd-x86_64.ads (Backend_Overflow_Checks): Set true True.
      	Remove unused variables.
      
      From-SVN: r178229
      Thomas Quinot committed
    • [multiple changes] · 3e24afaa
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb: Remove Build_Explicit_Dereference.
      	* sem_util.adb, sem_util.ads (Build_Explicit_Dereference): Moved here
      	from sem_res.adb, used in analysis of additional constructs.
      	(Is_Iterator, Is_Reversible_Iterator): New predicates for Ada2012
      	expansion of iterators.
      	(Is_Object_Reference): Recognize variables rewritten as explicit
      	dereferences in Ada2012.
      	* snames.ads-tmpl: Add Has_Element, Forward_Iterator,
      	Reversible_Iterator names, for expansion of Ada2012 iterators.
      	* aspects.ads, aspects.adb (Find_Aspect): Utility.
      	* a-cdlili.ads, a-cdlili.adb: Add new iterator machinery to doubly
      	linked list container.
      	* a-coinve.ads, a-coinve.adb: Ditto for indefinite vector containers.
      	* a-coorse.ads, a-coorse.adb: Ditto for ordered sets.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-cohama.adb, a-cohama.ads: Add iterator primitives to hashed map
      	containers.
      
      2011-08-29  Vincent Celier  <celier@adacore.com>
      
      	* make.adb (Gnatmake): Get the maximum number of simultaneous
      	compilation processes after the Builder switches has been scanned, as
      	there may include -jnn.
      
      2011-08-29  Matthew Heaney  <heaney@adacore.com>
      
      	* a-chtgbo.adb (Generic_Equal): Use correct overloading of Next.
      
      2011-08-29  Tristan Gingold  <gingold@adacore.com>
      
      	* gnatcmd.adb (GNATCmd): On OpenVMS, truncate the length of
      	GNAT_DRIVER_COMMAND_LINE to 255.
      
      2011-08-29  Pascal Obry  <obry@adacore.com>
      
      	* freeze.adb, sem_ch8.adb, a-convec.adb, a-convec.ads: Minor
      	reformatting and style fix (class attribute casing).
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch11.adb: Yet another case where expansion should be common
      	between CodePeer and Alfa.
      
      2011-08-29  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch9.adb: Partial revert of previous change for Alfa mode.
      
      2011-08-29  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Matches_Limited_With_View): The limited views of an
      	incomplete type and its completion match.
      
      From-SVN: r178228
      Arnaud Charlet committed