+2011-12-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * s-oscons-tmplt.c [__alpha__ && __osf__] (_XOPEN_SOURCE): Define.
+
+2011-12-21 Javier Miranda <miranda@adacore.com>
+
+ * sem_ch3.ads, sem_ch3.adb (Check_CPP_Type): New subprogram.
+ (Process_Full_View): Invoke Check_CPP_Type if processing the
+ full-view of a CPP type.
+ * sem_prag.adb (Process_Import_Or_Interface): Add missing support
+ for importing a CPP type that has an incomplete declaration. Move
+ to new routine Check_CPP_Type the code that verifies that
+ components of imported CPP types do not have default expressions.
+
+2011-12-21 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Report_No_Sources): Remove argument Lang. Report
+ no sources even for languages that are not allowed.
+ (Add_Source): Get the source even when the language is not allowed.
+
+2011-12-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch6.adb (Process_Formals): Add defensive code.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch7.adb, sem_ch13.adb (Analyze_Package_Specification): Build the
+ invariant procedure of a type declaration that is a completion and has
+ aspect specifications.
+ (Build_Invariant_Procedure): If the procedure is built for a
+ type declaration that is a completion, analyze body expliitly
+ because all private declarations have been already analyzed.
+
+2011-12-21 Claire Dross <dross@adacore.com>
+
+ * a-cfdlli.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb,
+ a-cofove.adb: Minor reformating on formal containers
+
+2011-12-21 Vincent Celier <celier@adacore.com>
+
+ * makeutl.adb (Mains.Complete_Mains.Do_Complete): Remove
+ any main that is not in the list of restricted languages.
+ (Insert_Project_Sources.Do_Insert): Only add sources of languages
+ in the list of restricted languages.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_res.adb (Valid_Conversion): A type conversion is valid when
+ the target type is an anonymous access type and the operand is a
+ rewriting of an allocator. The conversion is typically inserted
+ when the designated type is an interface.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch9.adb (Establish_Task_Master): If the enclosing block
+ has no declarations, create new declarative list for it.
+
+2011-12-21 Matthew Heaney <heaney@adacore.com>
+
+ * a-rbtgbk.adb (Generic_Conditional_Insert): Fixed incorrect comment.
+
+2011-12-21 Yannick Moy <moy@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not
+ ignore representation attributes in Alfa mode, since formal
+ verification backend does not depend on actual physical
+ representation, but code may still refer to attribute values.
+
+2011-12-21 Yannick Moy <moy@adacore.com>
+
+ * par-ch13.adb (P_Aspect_Specifications): Recognize the cases
+ where a comma between two aspects is missing, or erroneously
+ replaced by a semicolon, issue an error and proceed with next
+ aspect.
+ * par.adb, sinfo.ads: Fix typos.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_util.adb (Mark_Coextensions): A coextension for an
+ object that is part of the expression in a return statement,
+ or part of the return object in an extended return statement,
+ must be allocated dynamically.
+
+2011-12-21 Matthew Heaney <heaney@adacore.com>
+
+ * a-crbtgk.adb (Generic_Conditional_Insert): Fixed incorrect comment.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch5.adb (Analyze_Iterator_Specification): If the name
+ of an element iterator is not an entity name we introduce a
+ local renaming declaration for it. To prevent spurious warnings
+ on parameterless function calls that return a container, when
+ expansion is disabled (either explicitly or because of a previous
+ errors) the name must be marked as not coming from source.
+
+2011-12-21 Arnaud Charlet <charlet@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Separate
+ handling in CodePeer mode and only ignore Component_Size
+ attribute.
+
+2011-12-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch6.adb (Process_Formals): Set proper mechanism for
+ formals whose types have conventions Ada_Pass_By_Copy or
+ Ada_Pass_By_Reference.
+
+2011-12-21 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat1drv.adb (Gnat1Drv): Always delete old scil files in
+ CodePeer mode.
+
+2011-12-21 Robert Dewar <dewar@adacore.com>
+
+ * comperr.adb: Minor reformatting.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * aspects.ads: New table Base_Aspect, to indicate that an aspect
+ is defined on a base type.
+ * aspects.adb (Find_Aspect): If the aspect is a Base_Aspect,
+ examine the representation items of the base type.
+
+2011-12-21 Pascal Obry <obry@adacore.com>
+
+ * gnat_ugn.texi, prj.ads, prj-nmsc.adb, prj-attr.adb, projects.texi,
+ snames.ads-tmpl: Use Encapsulated instead of Fully Standalone library.
+
+2011-12-21 Pascal Obry <obry@adacore.com>
+
+ * adaint.c (__gnat_is_executable_file_attr) [_WIN32]: Add parentheses
+ to kill warning.
+
+2011-12-21 Arnaud Charlet <charlet@adacore.com>
+
+ * comperr.adb (Delete_SCIL_Files): Also delete .scilx files.
+ Fix implementation for child packages and package specs.
+ (Delete_SCIL_Files.Decode_Name_Buffer): New function.
+
+2011-12-21 Robert Dewar <dewar@adacore.com>
+
+ * err_vars.ads, a-cdlili.adb, a-cfdlli.ads, prj.adb, prj-nmsc.adb,
+ a-cbdlli.adb, a-cbdlli.ads, a-cfdlli.adb: Minor reformatting.
+
+2011-12-21 Vincent Pucci <pucci@adacore.com>
+
+ * s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads,
+ s-llflex.ads: Fix header.
+
+2011-12-21 Thomas Quinot <quinot@adacore.com>
+
+ * thread.c, s-oscons-tmplt.c, init.c (pthread_condattr_setclock): For
+ AIX 5.2, define as a dummy weak symbol in init.c.
+ (CLOCK_RT_Ada): Set to CLOCK_MONOTONIC on all versions of AIX.
+
+2011-12-21 Thomas Quinot <quinot@adacore.com>
+
+ * snames.ads-tmpl, sem_ch8.adb: Minor reformatting.
+ * sem_prag.adb: Minor comment clarification.
+
+2011-12-21 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Report_No_Sources): New argument Lang for the
+ language name as a Name_Id. Do not report no sources if language
+ is not allowed.
+ (Add_Source): Do not add source if language is not allowed.
+ * prj.adb (Add_Restricted_Language): New procedure
+ (Is_Allowed_Language): New function
+ * prj.ads (Add_Restricted_Language): New procedure
+ (Is_Allowed_Language): New function
+
+2011-12-21 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch5.adb, sem_dim.adb, sem_dim.ads, sem_ch12.adb, prj-conf.adb:
+ Minor reformatting.
+
+2011-12-21 Claire Dross <dross@adacore.com>
+
+ * a-cfdlli.ads (Constant_Indexing, Default_Iterator,
+ Iterator_Element): Added to type List.
+ (Not_No_Element, List_Iterator_Interfaces, Iterate,
+ Constant_Reference_Type, Constant_Reference): New.
+ * a-cfdlli.adb (type Iterator, Finalize, First, Last, Next,
+ Previous, Iterate, Not_No_Element, Constant_Reference): New.
+
+2011-12-21 Gary Dismukes <dismukes@adacore.com>
+
+ * gnat_ugn.texi: Minor reformatting.
+
+2011-12-21 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch5.adb (Expand_Iterator_Loop): The cursor operation
+ Has_Element is the formal of Iterator_Interfaces, and within
+ the instantion of this package it is a renaming of some local
+ function with an unrelated name. Retrieve the operation from
+ the instance itself, not from the container package.
+
+2011-12-21 Vincent Pucci <pucci@adacore.com>
+
+ * exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
+ replaced by Expand_Put_Call_With_Dimension_Symbol
+ * sem_ch12.adb (Analyze_Package_Instantiation): New check for
+ System.Dim_Float_IO and System.Dim_Integer_IO instantiation.
+ * sem_ch3.adb (Analyze_Declarations): Removed
+ Remove_Dimension_In_Declaration call.
+ * sem_dim.adb: Update comments. Redefine the
+ representation of a Rational. Propagate all changes involving
+ data structures and types throughout the pakage. Output the
+ dimension aggregates for each error messages.
+ ("/"): Rational constructor "/" removed for Whole operands.
+ ("/"): New rational operation "/" for Rational operands.
+ ("*"): Operation "*" between Rational and Int removed.
+ ("abs"): New unary operator "abs" for Rational.
+ (Analyze_Aspect_Dimension_System): Reorganized.
+ (Analyze_Dimension_Identifier): Removed.
+ (Copy_Dimensions): Removed.
+ (Create_Rational_From_Expr): New Boolean parameter.
+ (Dimensions_Msg_Of): New routine. Return
+ a string with the dimensions of the parameter.
+ (From_Dimension_To_String_Of_Symbols): Renaming of
+ From_Dimension_To_String_Id.
+ * sem_dim.ads: Update comments.
+ (Is_Dim_IO_Package_Instantiation): New routine.
+ (Remove_Dimension_In_Declaration): Removed.
+ * sem_res.adb (Resolve_Op_Expon): Reorganized calls of
+ Eval_Op_Expon_For_Dimensioned_Type and Eval_Op_Expon.
+ * s-diflio.ads, s-diinio.ads: Update comments.
+
+2011-12-21 Pascal Obry <obry@adacore.com>
+
+ * prj-attr.adb, snames.ads-tmpl: Add Library_Standalone,
+ Library_Fully_Standalone_Options and
+ Library_Fully_Standalone_Supported attributes.
+ * prj-nmsc.adb (Check_Library): Update check to take into
+ account fully standalone libraries. Such shared libraries can
+ only depend on static libraries.
+ (Check_Stand_Alone_Library): Add support for fully standalone libraries.
+ (Process_Project_Level_Simple_Attributes): Store value for
+ configuration attribute Library_Fully_Standalone_Supported.
+ * prj.ads, makeutl.adb (Standalone): New enumeration type.
+ (Project_Data): Standalone_Library now of type Standlone.
+ (Project_Configuration): Add Lib_Fully_Standalone_Supported
+ field.
+ (Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported
+ field.
+ * clean.adb (Clean_Project): Adjust to new type for Standalone.
+ * make.adb (Library_Phase): Adjust to new type for Standalone.
+ (Gnatmake): Likewise.
+ * mlib-prj.adb (Build_Library): Adjust to new type for
+ Standalone.
+
+2011-12-21 Thomas Quinot <quinot@adacore.com>
+
+ * gnatls.adb (Gnatls): Call Set_Standard_Error at startup, and then
+ Set_Standard_Output just before producing normal (non-diagnostic)
+ output.
+ * gnatcmd.adb (Gnatcmd): Call Set_Standard_Error at initialization
+ (and again after parsing project files).
+
+2011-12-21 Vincent Celier <celier@adacore.com>
+
+ * prj-conf.adb (Do_Autoconf): When the object directory does
+ not exist, create auto.cgpr in the directory where temporary
+ files are created.
+
+2011-12-20 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch12.adb (Insert_Freeze_Node_For_Instance): Further
+ refinements on the placement of a freeze node for a package
+ instantiation, when the generic appears within a previous
+ instantiation in the same unit.If the current instance is within
+ the one that contains the generic, the freeze node for the
+ current one must appear in the current declarative part. Ditto
+ if the current instance is within another package instance. In
+ these cases the freeze node of the previous instance is is not
+ relevant. New predicate Enclosing_Body simplifies the process.
+ (Freeze_Subprogram_Body): Rename Enclosing_Body to
+ Enclosing_Package_Body, to prevent confusion with subprogram of
+ same name elsewhere.
+ (Install_Body): Recognize enclosing subprogram bodies to determine
+ whether freeze_node belongs in current declarative list.
+
+2011-12-20 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Allow
+ attribute definition clause for renaming if generated internally
+ and generate duplicate clause to apply to renamed object.
+ (Rep_Item_Too_Late): Only diagnose source level entities
+ * prj-nmsc.adb: Minor reformatting.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2011-12-20 Bob Duff <duff@adacore.com>
+
+ * opt.ads (List_Inherited_Aspects): Default to False
+ (i.e. -gnatw.L is the default).
+ * usage.adb: Document new default for -gnatw.L.
+ * gnat_ugn.texi: Document -gnatw.l and -gnatw.L switches.
+ * warnsw.adb (Set_Warning_Switch): Do not include
+ List_Inherited_Aspects in -gnatwa.
+
+2011-12-20 Ed Schonberg <schonberg@adacore.com>
+
+ * checks.adb (Apply_Type_Conversion_Checks): For a discrete type
+ with predicates, indicate unconditionally that a range check
+ is needed.
+ * exp_ch4.adb (Expand_N_In): When the membership test is rewritten
+ to incorporate a call to a predicate function, analyze expression
+ with checks suppressed, to prevent infinite recursion.
+
+2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch11.adb (Find_Local_Handler): Guard the
+ search over individual exception choices in case the list of
+ handlers contains other (possibly illegal) constructs.
+
+2011-12-20 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch8.adb (Find_Type): Test taggedness
+ of the Available_Type when checking for an illegal use of an
+ incomplete type, when the incomplete view is a limited view of
+ a type. Remove redundant Is_Tagged test.
+
+2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_util.adb: Add with and use clause for Aspects.
+ (Is_Finalizable_Transient): Objects which denote Ada containers
+ in the context of iterators are not considered transients. Such
+ object must live for as long as the loop is around.
+ (Is_Iterated_Container): New routine.
+
+2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_imgv.adb (Expand_Width_Attribute): Add a
+ type conversion from the enumeration subtype to its base subtype.
+
+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
+
+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.
+
+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.
+
+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.
+
+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.
+
+2011-12-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * 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.
+
+2011-12-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_param): Add comment about double
+ reference and DECL_POINTS_TO_READONLY_P.
+ * gcc-interface/trans.c (Identifier_to_gnu) <by_ref>: Always set the
+ TREE_READONLY flag on the first dereference of a double dereference.
+
+2011-12-15 Arnaud Charlet <charlet@adacore.com>
+
+ * a-numaux-vms.ads, s-asthan-vms-ia64.adb, s-auxdec-vms-ia64.adb,
+ s-memory-vms_64.adb, s-memory-vms_64.ads, s-osinte-vms-ia64.adb,
+ s-osinte-vms-ia64.ads, s-tasdeb-vms.adb: New files.
+
+2011-12-15 Vincent Pucci <pucci@adacore.com>
+
+ * aspects.adb, aspects.ads Aspect_Dimension and
+ Aspect_Dimension_System added
+ * exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
+ case added
+ * gcc-interface/Make-lang.in: s-llflex, sem_dim added.
+ * impunit.adb :s-diflio and s-diinio defined as GNAT Defined
+ Additions to System.
+ * Makefile.rtl: s-diflio, s-diinio and s-llflex added
+ * par-prag.adb, sem_prag.adb: Pragma_Dimension removed
+ * rtsfind.ads: Expon_LLF added
+ * sem_aggr.adb (Resolve_Aggregate): handles aggregate for
+ Aspect_Dimension case
+ * sem_attr.adb (Resolve_Attribute): analyze dimension for
+ attribute
+ * sem_ch10.adb (Analyze_With_Clause): Avoid the warning messages
+ due to the use of a GNAT library for Dimension packages
+ * sem_ch13.adb (Analyze_Aspect_Specifications):
+ Aspect_Dimension and Aspect_Dimension_System cases added
+ (Check_Aspect_At_Freeze_Point): Aspect_Dimension and
+ Aspect_Dimension_System cases added
+ * sem_ch2.adb (Analyze_Identifier): analyze dimension for
+ identifier
+ * sem_ch3.adb (Analyze_Component_Declaration): analyze dimension
+ for component declaration (Analyze_Object_Declaration): analyze
+ dimension for object declaration (Analyze_Subtype_Declaration):
+ analyze dimension for subtype declaration
+ * sem_ch4.adb (Operator_Check): checks exponent is a rational
+ for dimensioned operand for a N_Op_Expon
+ * sem_ch5.adb (Analyze_Assignment): analyze dimension for
+ assignment (Analyze_Statements): removal of dimensions in all
+ statements
+ * sem_ch6.adb (Analyze_Return_Statement): analyze dimension for
+ return statement
+ * sem_ch8.adb (Analyze_Object_Renaming): analyze dimension for
+ object renaming
+ * sem_dim.adb, sem_dim.ads (Analyze_Aspect_Dimension):
+ analyze the expression for aspect dimension and store the
+ values in a Htable.
+ (Analyze_Aspect_Dimension_System): analyze
+ the expression for aspect dimension system and store the new
+ system in a Table.
+ (Analyze_Dimension): propagates dimension
+ (Expand_Put_Call_With_Dimension_String): add the dimension
+ string as a suffix of the numeric value in the output
+ (Has_Dimension): return True if the node has a dimension
+ (Remove_Dimension_In_Declaration): removal of dimension in the
+ expression of the declaration.
+ (Remove_Dimension_In_Statement): removal of dimension in statement
+ * sem_res.adb (Resolve): analyze dimension if the node
+ has already been analyzed.
+ (Resolve_Arithmetic_Op): analyze
+ dimension for arithmetic op.
+ (Resolve_Call): analyze dimension for function call.
+ (Resolve_Comparison_Op): analyze dimension for comparison op.
+ (Resolve_Equality_Op): analyze dimension for equality op.
+ (Resolve_Indexed_Component): analyze dimension for indexed component.
+ (Resolve_Op_Expon): analyze dimension for op expon.
+ (Resolve_Selected_Component): analyze dimension
+ for selected component.
+ (Resolve_Slice): analyze dimension for slice.
+ (Resolve_Unary_Op): analyze dimension for unary op
+ (Resolve_Type_Conversion): analyze dimension for type conversion
+ (Resolve_Unchecked_Type_Conversion): analyze dimension for
+ unchecked type conversion
+ * snames.ads-tmpl Name_Dimension, Name_Dimension_System,
+ Name_Dim_Float_IO, Name_Dim_Integer_IO,
+ Name_Generic_Elementary_Functions, Name_Sqrt added.
+ Pragma_Dimension removed
+ * s-diflio.adb, s-diflio.ads New GNAT library generic package
+ for dimensioned float type IO
+ * s-diinio.adb, s-diinio.ads New GNAT library generic package
+ for dimensioned integer type IO
+ * s-llflex.ads (Expon_LLF): exponentiation routine for long long
+ floats operand and exponent
+
+2011-12-15 Robert Dewar <dewar@adacore.com>
+
+ * sem_aggr.adb: Minor comment addition.
+
+2011-12-15 Bob Duff <duff@adacore.com>
+
+ * s-tasren.adb (Task_Count): Do not call Yield; E'Count is not a
+ task dispatching point.
+ * s-taprop-mingw.adb (Yield): Do not yield if Do_Yield is False.
+
+2011-12-15 Robert Dewar <dewar@adacore.com>
+
+ * sigtramp-ppcvxw.c, sigtramp.h: Fix header.
+
+2011-12-15 Javier Miranda <miranda@adacore.com>
+
+ * exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment
+ applied to a class-wide type under VM targets generate code which
+ invokes the function Get_Alignment to retrieve the value of the
+ alignment from the TSD.
+ * rtsfind.ads (RE_Get_Alignment): New entity.
+
+2011-12-15 Robert Dewar <dewar@adacore.com>
+
+ * g-comlin.adb: Fix header.
+
+2011-12-15 Tristan Gingold <gingold@adacore.com>
+
+ * gnatls.adb: Fix typo.
+
+2011-12-15 Ed Falis <falis@adacore.com>
+
+ * s-tpopsp-vxworks.adb: Update comment.
+
+2011-12-15 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_aggr.adb (Resolve_Array_Aggregate, Resolve_Aggr_Expr); If
+ the component type has predicates, generate corresponding check.
+ (Resolve_Record_Aggregate, Resolve_Aggr_Expr): Ditto.
+
+2011-12-13 Cesar Strauss <cestrauss@gmail.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/49084
+ * types.h (Byte): Change typedef to 'unsigned char'.
+ * atree.h (struct Flag_Word): Use Byte for 'convention' field.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * s-taprop-mingw.adb: Minor reformatting.
+
+2011-12-12 Nicolas Roche <roche@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+ Add gnattools4 target when building tools in canadian mode
+
+2011-12-12 Javier Miranda <miranda@adacore.com>
+
+ * exp_disp.adb (Make_VM_TSD): Complete previous patch.
+
+2011-12-12 Bob Duff <duff@adacore.com>
+
+ * s-tpobop.adb: Use named notation.
+ * g-bytswa.ads, s-taprop.ads: Minor comment fix.
+
+2011-12-12 Arnaud Charlet <charlet@adacore.com>
+
+ * make.adb: Minor comment update.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * freeze.adb, s-taprop-mingw.adb, exp_disp.adb, sem_ch13.adb: Minor
+ reformatting.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch6.adb, gnatls.adb: Minor reformatting.
+
+2011-12-12 Ed Schonberg <schonberg@adacore.com>
+
+ * freeze.adb (Freeze_Entity): If a type declared in a generic
+ context has predicates, generate a freeze node for it.
+ * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): If expression
+ has not been analyzed yet, entity has not been frozen, so analyze
+ it now.
+
+2011-12-12 Javier Miranda <miranda@adacore.com>
+
+ * exp_disp.adb (Make_VM_TSD): Generate code to store the value of
+ 'alignment in the TSD.
+
+2011-12-12 Bob Duff <duff@adacore.com>
+
+ * s-taprop-mingw.adb (Yield): Do not delay 1 millisecond in Annex D
+ mode.
+
+2011-12-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Allocator): Update the master of an
+ anonymous access-to-controlled type to utilize the heterogeneous
+ master associated with the current unit.
+
+2011-12-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Expression_Function): If the function
+ is not a completion, pre-analyze the expression now to prevent
+ spurious visibility on later entities. The body is inserted at
+ the end of the current declaration list or package to prevent
+ early freezing, but the visibility is established at the point
+ of definition.
+
+2011-12-12 Bob Duff <duff@adacore.com>
+
+ * sem.adb, sem.ads: Add debugging routines.
+
+2011-12-12 Tristan Gingold <gingold@adacore.com>
+
+ * gnatls.adb: (gnatls): Also add the objects dir in search list.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * exp_atag.adb, exp_atag.ads, exp_util.adb, exp_attr.adb,
+ sem_ch13.adb: Minor reformatting.
+
+2011-12-12 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch7.adb (Uninstall_Declarations): Don't
+ apply check for incomplete types used as a result type for an
+ access-to-function type when compiling for Ada 2012 or later.
+ * sem_ch6.adb (Analyze_Subprogram_Declaration):
+ Specialize error message for interface subprograms that are
+ not declared abstract nor null (functions can't be declared as
+ null). Also, remove "(Ada 2005)" from message.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb (GNAT_Pragma): Check comes from source.
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * gnatls.adb: Minor reformatting.
+
+2011-12-12 Javier Miranda <miranda@adacore.com>
+
+ * a-tags.ads (Alignment): New TSD field.
+ (Max_Predef_Prims): Value lowered to 15 (or 9 in case of
+ configurable runtime) Update documentation of predefined
+ primitives since Alignment has been removed.
+ * exp_disp.ads Update documentation of slots of dispatching
+ primitives.
+ * exp_disp.adb (Default_Prim_Op_Position): Update slot
+ values since alignment is no longer a predefined primitive.
+ (Is_Predefined_Dispatch_Operation): Remove _alignment.
+ (Is_Predefined_Internal_Operation): Remove _alignment.
+ (Make_DT): Update static test on the value stored in a-tags.ads
+ for Max_Predef_Prims; store the value of 'alignment in the TSD.
+ * exp_atag.ads, exp_atag.adb (Build_Get_Alignment): New subprogram
+ that retrieves the alignment from the TSD
+ * exp_util.adb (Build_Allocated_Deallocate_Proc): For deallocation
+ of class-wide types obtain the value of alignment from the TSD.
+ * exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment
+ applied to a class-wide type invoke Build_Get_Alignment to
+ generate code which retrieves the value of the alignment from
+ the TSD.
+ * rtsfind.ads (RE_Alignment): New Ada.Tags entity
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For tagged
+ types if the value of the alignment is bigger than the Maximum
+ alignment then set the value of the alignment to the Maximum
+ alignment and report a warning.
+ * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate
+ spec of _alignment.
+ (Predefined_Primitive_Bodies): Do not generate body of _alignment.
+
+2011-12-12 Gary Dismukes <dismukes@adacore.com>
+
+ * freeze.adb (Freeze_Expression): Allow freezing of static
+ scalar subtypes that are prefixes of an attribute, even if not
+ yet marked static. Such attributes will get marked as static
+ later in Eval_Attribute (as called from Resolve_Attribute).
+ * sem_attr.adb (Eval_Attribute): Remove wrong code that does an
+ early return for attribute prefixes that are unfrozen source-level
+ types. This code was incorrectly bypassing folding of unfrozen
+ static subtype attributes in default expressions (the executable
+ example in the now-deleted comment was in fact illegal).
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * a-coinve.adb, sem_res.adb, prj-nmsc.adb, a-cobove.adb, a-convec.adb,
+ gnatls.adb, sem_ch13.adb, prj-env.adb, prj-env.ads: Minor reformatting.
+
+2011-12-12 Tristan Gingold <gingold@adacore.com>
+
+ * gsocket.h: Adjust previous patch.
+
+2011-12-12 Thomas Quinot <quinot@adacore.com>
+
+ * exp_disp.adb: Minor reformatting.
+
+2011-12-12 Tristan Gingold <gingold@adacore.com>
+
+ * gnatls.adb (Search_RTS): New procedure.
+ (Scan_Ls_Arg): Move code that search the RTS.
+ (Gnatls): search the RTS later.
+ * prj-env.ads, prj-env.adb (Get_Runtime_Path): New function.
+
+2011-12-12 Ed Falis <falis@adacore.com>
+
+ * sysdep.c: Fix treatment of VxWorks task options so that run-times
+ built with __SPE__ get option VX_SPE_TASK while others get VX_FP_TASK.
+
+2011-12-12 Bob Duff <duff@adacore.com>
+
+ * sem_type.adb, sem_type.ads, sem_ch4.adb, treepr.adb, treepr.ads:
+ Minor cleanup and fiddling with debug printouts.
+
+2011-12-12 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Get_Directories): For a non extending project,
+ always get a declared object and/or exec directory if it already
+ exists, even when there are no sources, but do not create them.
+
+2011-12-12 Bob Duff <duff@adacore.com>
+
+ * sem_res.adb (Resolve): Deal with the case where an abstract
+ operator is called with operands of type universal_integer.
+
+2011-12-12 Thomas Quinot <quinot@adacore.com>
+
+ * par_sco.adb: Minor fix to dominance marker referencing WHILE
+ decision.
+
+2011-12-12 Tristan Gingold <gingold@adacore.com>
+
+ * mlib-tgt-specific-xi.adb: (Get_Target_Prefix): Simplify code.
+
+2011-12-12 Thomas Quinot <quinot@adacore.com>
+
+ * par_sco.adb: Adjust dominant marker for branches of CASE
+ statements.
+
+2011-12-12 Thomas Quinot <quinot@adacore.com>
+
+ * gsocket.h, s-oscons-tmplt.c: Ensure we do not include any system
+ header file prior to redefining FD_SETSIZE.
+
+2011-12-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): In
+ a generic context the aspect expressions may not have been
+ preanalyzed if there was no previous freeze point, so the
+ expressions must be preanalyzed now, and there is no conformance
+ to check for visibility changes.
+
+2011-12-12 Matthew Heaney <heaney@adacore.com>
+
+ * a-convec.adb, a-coinve.adb, a-cobove.adb (Iterator): Use
+ subtype Index_Type'Base for Index component (Finalize): Remove
+ unnecessary access check (First, Last): Cursor return value
+ depends on iterator index value (Iterate): Use start position as
+ iterator index value (Next, Previous): Forward to corresponding
+ cursor-based operation.
+ * a-cborma.adb (Iterate): Properly initialize iterator object (with 0
+ as node index).
+
+2011-12-12 Robert Dewar <dewar@adacore.com>
+
+ * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting.
+
+2011-12-12 Steve Baird <baird@adacore.com>
+
+ * sem_ch3.adb (Check_Completion): Improve a comment.
+
+2011-12-12 Tristan Gingold <gingold@adacore.com>
+
+ * cstand.adb: Minor comment fix.
+
+2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC
+ flag of elements to compute that of the constructor.
+
+2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier
+ on references built for parameters which aren't specifically by-ref.
+
+2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If there is an
+ alignment set on a renaming, assert that the renamed object is aligned
+ enough as to make it possible to honor it.
+
+2011-12-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gigi): Initialize the linemap earlier.
+
+2011-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS [windows targets]):
+ Correctly detect cygwin, which no longer has the '32' suffix, and use
+ appropriate implementations of the sockets and memory packages.
+ * sysdep.c (WIN_SETMODE): New define to choose the correct spelling of
+ setmode/_setmode for MinGW and Cygwin, respectively.
+ (__gnat_set_binary_mode [windows targets]): Use the above, and enable
+ the windows version for Cygwin as well as MinGW.
+ (__gnat_set_text_mode [windows targets]): Likewise.
+ (__gnat_ttyname [windows targets]): Provide a Cygwin implementation
+ in addition to the MinGW version.
+ (__gnat_is_windows_xp): Make available to Cygwin as well as MinGW.
+ (__gnat_get_stack_bounds): Likewise.
+
+2011-12-05 Bob Duff <duff@adacore.com>
+
+ * sem_ch4.adb: Minor comment fix.
+
+2011-12-05 Robert Dewar <dewar@adacore.com>
+
+ * gnat_ugn.texi: Add documentation for -gnatw.e.
+
+2011-12-05 Bob Duff <duff@adacore.com>
+
+ * treepr.adb (pn): Print something useful for
+ Elmt_Ids. Add Write_Eol to 'when others' case, so the output
+ will be seen immediately in gdb.
+
+2011-12-05 Ed Schonberg <schonberg@adacore.com>
+
+ * lib-writ.adb (Output_Main_Program_Line): A generic subprogram
+ is never a main program.
+
+2011-12-05 Thomas Quinot <quinot@adacore.com>
+
+ * par_sco.adb: Various minor adjustments to dominance markers
+ generation.
+
+2011-12-05 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Expression_Function): If the function is
+ a completion, generate a body reference for its defining entity,
+ before rewriting the node as a body.
+ * sem_util.adb (Defining_Entity): Add entry for expression
+ function.
+
+2011-12-05 Bob Duff <duff@adacore.com>
+
+ * sem_ch3.adb (Derive_Progenitor_Subprograms): Add Ultimate_Alias
+ to the Comes_From_Source check, to deal properly with the case
+ of indirect inheritance of "=".
+
+2011-12-05 Thomas Quinot <quinot@adacore.com>
+
+ PR ada/51307
+ * s-oscons-tmplt.c: On HP-UX, CLOCK_REALTIME is an enum literal,
+ not a macro.
+
+2011-12-05 Thomas Quinot <quinot@adacore.com>
+
+ * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Generate dominance
+ information in SCOs.
+
+2011-12-02 Eric Botcazou <ebotcazou@adacore.com>
+ Thomas Quinot <quinot@adacore.com>
+
+ * gcc-interface/Makefile.in (INCLUDES): Remove $(srcdir)/config.
+ (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) except for VxWorks.
+ Add thread.c to LIBGNAT_SRCS so that a symlink is created in ada/rts,
+ which allows the file to be installed in adainclude.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2011-12-02 Javier Miranda <miranda@adacore.com>
+
+ * sem_ch3.adb (Constrain_Access): Undo previous
+ patch for this routine. Required since the RM rule 3.7.1(7/3)
+ applies to all access types.
+
+2011-12-02 Bob Duff <duff@adacore.com>
+
+ * sem_ch6.adb: Minor comment fix.
+
+2011-12-02 Joel Sherrill <joel.sherrill@oarcorp.com>
+
+ * s-tpopsp-rtems.adb: Use ATCB_Key rather than RTEMS_Ada_Self variable
+ for consistency with other ports.
+ * s-osinte-rtems.adb: Add body for dummy implementation of
+ pthread_rwlockattr_setkind_np().
+ * s-osinte-rtems.ads: Add missing clock and rwlock bindings.
+ * terminals.c: Add __rtems__ conditionals to account for differences
+ in termios implementation.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb, sem_attr.adb, a-comutr.adb, a-cbmutr.adb,
+ a-cbmutr.ads: Minor reformatting.
+
+2011-12-02 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_dbug.adb: Comment reformatting.
+ (Get_External_Name): Use Reset_Buffers to reset the contents of
+ Name_Buffer and Homonym_Numbers.
+ (Qualify_All_Entity_Names): Reset the contents of Name_Buffer and
+ Homonym_Numbers before creating a new qualified name for a particular
+ entity.
+ (Reset_Buffers): New routine.
+
+2011-12-02 Matthew Heaney <heaney@adacore.com>
+
+ * a-cbmutr.ads (No_Node): Moved declaration from body to spec
+ * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Iterator): Derives
+ from Root_Iterator.
+ (Child_Iterator): Derives from Root_Iterator.
+ (Finalize): Implemented as an override operation for Root_Iterator.
+ (First): Return value depends on Subtree component.
+ (Last): Component was renamed from Parent to Subtree.
+ (Next): Checks parameter value, and uses simplified loop.
+ (Iterate): Forwards to Iterate_Subtree.
+ (Iterate_Children): Component was renamed from Parent to Subtree.
+ (Iterate_Subtree): Checks parameter value
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * usage.adb: Add lines for -gnatw.n and -gnatw.N
+ (atomic sync info msgs).
+
+2011-12-02 Steve Baird <baird@adacore.com>
+
+ * sem_ch3.adb (Check_Completion): An Ada 2012
+ generic formal type doesn't require a completion.
+
+2011-12-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * sem_util.adb (Set_Debug_Info_Needed): Also set the flag on the
+ packed array type if it is to be set on the array type used to
+ represent it.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Eliminate confusing use of type name.
+
+2011-12-02 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch10.adb (Analyze_Compilation_Unit): For a library subprogram
+ body that acts as spec, do not create a shallow copy of the context
+ clause for the synthetized spec (instead, use the same list as
+ in the body).
+
+2011-12-02 Bob Duff <duff@adacore.com>
+
+ * gnat_ugn.texi: Clarify usage of -p binder switch.
+
+2011-12-02 Javier Miranda <miranda@adacore.com>
+
+ * sem_util.ads, sem_util.adb, sem_aux.ads, sem_aux.adb
+ (Effectively_Has_Constrained_Partial_View): Moved to sem_aux
+ (In_Generic_Body): Moved to sem_aux.
+ (Unit_Declaration_Node): Moved to sem_aux.
+ * einfo.ads (Effectively_Has_Constrained_Partial_View): Complete
+ documentation.
+ * exp_attr.adb, live.adb, sem_ch10.adb, checks.adb, sem.adb,
+ rtsfind.adb, sem_attr.adb, sem_elab.adb, exp_ch4.adb, sem_ch4.adb,
+ exp_ch13.adb: Add with-clause on Sem_Aux.
+
+2011-12-02 Yannick Moy <moy@adacore.com>
+
+ * sem_util.adb (Unique_Name): Reach through Unique_Entity to
+ get the name of the entity.
+ (Unique_Entity): Correct case for subprogram stubs.
+
+2011-12-02 Yannick Moy <moy@adacore.com>
+
+ * sem_ch3.adb (Check_Initialization): Do not emit warning on
+ initialization of limited type object in Alfa mode.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * sinfo.ads: Minor reformatting.
+ * gnat_ugn.texi: Fix confusion in use of term "type name".
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch6.adb: Minor change in error message.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch9.adb, prj-part.adb, vms_data.ads, sem_ch8.adb: Minor
+ reformatting.
+
+2011-12-02 Javier Miranda <miranda@adacore.com>
+
+ * sem_ch3.adb (Constrain_Access): Enable on Ada 2005 mode the
+ static check of the rule of general access types whose designated
+ type has discriminants.
+ * sem_util.ads, sem_util.adb
+ (Effectively_Has_Constrained_Partial_View): New subprogram.
+ (In_Generic_Body): New subprogram.
+ * einfo.ads (Has_Constrained_Partial_View): Adding documentation.
+ * sem_prag.adb (Inside_Generic_Body): Removed. Replaced by new
+ subprogram In_Generic_Body.
+ * exp_attr.adb, checks.adb, sem_attr.adb, exp_ch4.adb,
+ sem_ch4.adb: In addition, this patch replaces the occurrences of
+ Has_Constrained_Partial_View by
+ Effectively_Has_Constrained_Partial_View.
+
+2011-12-02 Matthew Heaney <heaney@adacore.com>
+
+ * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Iterator): Rename
+ Position component.
+ (Finalize): Remove unnecessary access check.
+ (First): Forward to First_Child.
+ (Last): Forward to Last_Child.
+ (Iterate): Check preconditions for parent node parameter.
+ (Next): Forward to Next_Sibling.
+ (Previous): Forward to Previous_Sibling.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * a-coinve.adb, a-coorma.adb, freeze.adb, a-coorse.adb, a-comutr.adb,
+ a-coormu.adb, a-convec.adb: Minor reformatting.
+
+2011-12-02 Matthew Heaney <heaney@adacore.com>
+
+ * a-coormu.ads, a-ciormu.ads: Declare iterator factory function.
+ * a-ciormu.adb, a-ciormu.adb (Iterator): Declare concrete
+ Iterator type.
+ (Finalize): Decrement busy counter.
+ (First, Last): Cursor return value depends on iterator node value.
+ (Iterate): Use start position as iterator node value.
+ (Next, Previous): Forward to corresponding cursor-based operation.
+
+2011-12-02 Robert Dewar <dewar@adacore.com>
+
+ * a-cborma.adb, a-cbhama.adb, a-cbdlli.adb, a-cbmutr.adb,
+ a-cbhase.adb, a-cdlili.adb, a-cihama.adb, a-ciorse.adb, a-cidlli.adb,
+ a-cimutr.adb, a-cihase.adb, a-cohama.adb, a-cborse.adb,
+ a-ciorma.adb, a-cobove.adb: Minor reformatting.
+
+2011-12-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/51201
+ * gcc-interface/Make-lang.in: Initialize RTS_DIR with = instead of :=.
+
+2011-11-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * s-taprop-tru64.adb (Create_Task): Use Unrestricted_Access.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * thread.c, s-oscons-tmplt.c: Generate __gnat_pthread_condattr_setup
+ only on platforms where this is required, as determined by
+ s-oscons.h.
+
+2011-11-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch9.adb: No check on entry index if error on index.
+
+2011-11-23 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch6.adb (Analyze_Return_Statement): Improve error messages for
+ return statements nested inside an extended_return_statement.
+ * gcc-interface/Make-lang.in: Update dependencies.
+ * gcc-interface/Makefile.in (MISCLIB): Add -lutil for BSD targets.
+
+2011-11-23 Ed Schonberg <schonberg@adacore.com>
+
+ * freeze.adb (Freeze_All_Ent): An incomplete type is not
+ frozen by a subprogram body that does not come from source.
+
+2011-11-23 Pascal Obry <obry@adacore.com>
+
+ * s-oscons-tmplt.c: Add PTY_Library constant. It contains
+ the library for pseudo terminal support.
+ * g-exptty.ads: Add pseudo-terminal library into a Linker_Options
+ pragma.
+
+2011-11-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch9.adb: No check on entry family index if generic.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch9.adb, s-taprop.ads, s-taprop-hpux-dce.adb, s-taprop-irix.adb,
+ s-taprop-posix.adb, s-taprop-rtx.adb, s-taprop-solaris.adb,
+ s-taprop-tru64.adb, s-taprop-vxworks.adb: Move dependency on
+ System.OS_Constants from shared spec of
+ System.Tasking.Primitive_Operations to the specific body variants
+ that really require this dependency.
+
+2011-11-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch8.adb (Analyze_Subprogram_Renaming_Declaration):
+ If the declaration has aspects, analyze them so they can be
+ properly rejected.
+
+2011-11-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * a-comutr.adb, a-coorma.adb, a-coorse.adb, a-convec.adb, a-cihase.adb,
+ a-cimutr.adb, a-coinve.adb, a-ciorma.adb, a-ciorse.adb, a-cobove.adb,
+ a-cohama.adb, a-cihama.adb, a-cidlli.adb, a-cdlili.adb, a-cbhama.adb,
+ a-cbhase.adb, a-cbmutr.adb, a-cborma.adb, a-cborse.adb, a-cbdlli.adb:
+ Add with and use clause for Ada.Finalization. Type
+ Iterator and Child_Iterator are now derived from Limited_Controlled.
+ (Finalize): New routine.
+ (Iterate): Add a renaming of counter Busy and
+ increment it. Update the return aggregate.
+ (Iterate_Children): Add a renaming of
+ counter Busy and increment it. Update the return aggregate.
+ (Iterate_Subtree): Add a renaming of counter Busy and increment
+ it. Update the return aggregate.
+ * a-cdlili.ads, a-cidlli.ads: Type List_Access is now a general access
+ type.
+ * a-cihama.ads: Type Map_Access is now a general access type.
+ * a-comutr.ads, a-cimutr.ads: Use type Natural for the two locks
+ associated with the tree.
+ * a-cohama.ads: Type Map_Access is now a general access type.
+ * a-coinve.ads, a-convec.ads: Type Vector_Access is now a general
+ access type.
+ * exp_ch5.adb (Expand_Iterator_Loop): Do not create a block
+ to wrap the loop as this is done at an earlier step, during
+ analysis. The declarations of the iterator and the cursor use
+ the usual Insert_Action mechanism when added into the tree.
+ * sem_ch5.adb (Analyze_Loop_Statement): Remove local constant
+ Loop_Statement and replace all respective uses by N. Add local
+ constant Loc. Preanalyze the loop iterator to discover whether
+ it is a container iterator and if it is, wrap the loop in a
+ block. This ensures that any controlled temporaries produced
+ by the iteration scheme share the same lifetime of the loop.
+ (Is_Container_Iterator): New routine.
+ (Is_Wrapped_In_Block): New routine.
+ (Pre_Analyze_Range): Move spec and body to the library level.
+
+2011-11-23 Sergey Rybin <rybin@adacore.com frybin>
+
+ * gnat_ugn.texi, vms_data.ads: Add documentation for new gnatpp option
+ that controls casing of type and subtype names.
+
+2011-11-23 Yannick Moy <moy@adacore.com>
+
+ * sem_ch3.adb: Minor addition of comments.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * prj-part.adb (Extension_Withs): New global variable,
+ contains the head of the list of WITH clauses from the EXTENDS
+ ALL projects for which virtual packages are being created.
+ (Look_For_Virtual_Projects_For): When recursing through
+ an EXTENDS ALL, add the WITH clauses of the extending
+ project to Extension_Withs. When adding a project to the
+ Virtual_Hash, record the associated Extension_Withs list.
+ (Create_Virtual_Extending_Project): Add a copy of the appropriate
+ Extension_Withs to the virtual project.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * mlib-tgt-specific-vxworks.adb: Minor reformatting.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * Make-generated.in (Sdefault.Target_Name): Set to
+ $(target_noncanonical) instead of $(target) for consistency.
+
+2011-11-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Iterator): Declared
+ Iterator type as limited (First, Last): Cursor return value
+ depends on iterator node value (Iterate): Use start position as
+ iterator node value (Next, Previous): Forward to corresponding
+ cursor-based operation.
+
+2011-11-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-coorse.ads, a-ciorse.ads, a-cborse.ads (Set_Iterator_Interfaces):
+ Renamed from Ordered_Set_Iterator_Interfaces.
+ * a-coorse.adb, a-ciorse.adb, a-cborse.adb (Iterator): Declared
+ Iterator type as limited (First, Last): Cursor return value
+ depends on iterator node value (Iterate): Use start position as
+ iterator node value (Next, Previous): Forward to corresponding
+ cursor-based operation.
+ * a-cohase.ads, a-cohase.adb: Implemented forward iterator.
+ * a-cihase.adb, a-cbhase.adb (Iterator): Removed unnecessary
+ node component (First, Next): Forward call to corresponding
+ cursor-based operation (Iterate): Representation of iterator no
+ longer has node component
+
+2011-11-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_intr.adb (Expand_Unc_Deallocation): Ensure that the
+ dereference has a proper type before the side effect removal
+ mechanism kicks in.
+ * sem_ch3.adb (Analyze_Subtype_Declaration): Handle a rare case
+ where the base type of the subtype is a private itype created
+ to act as the partial view of a constrained record type. This
+ scenario manifests with equivalent class-wide types for records
+ with unknown discriminants.
+
+2011-11-23 Jerome Guitton <guitton@adacore.com>
+
+ * s-osprim-vxworks.adb (Clock): Use Clock_RT_Ada.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * s-oscons-tmplt.c: Fix unbalanced preprocessor directives Minor
+ reformatting/reorganization.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * g-htable.ads: Remove old comments.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * exp_imgv.adb: Minor reformatting.
+
+2011-11-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch9.adb (Analyze_Entry_Declaration): Check for entry
+ family bounds out of range.
+
+2011-11-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-cohama.adb, a-cihama.adb, a-cbhama.adb (Iterator): Declare
+ type as limited, and remove node component.
+ (First, Next): Forward call to corresponding cursor-based operation.
+ (Iterate): Representation of iterator no longer has node component.
+
+2011-11-23 Yannick Moy <moy@adacore.com>
+
+ * exp_util.adb: Revert previous change to remove side-effects in Alfa
+ mode, which is not the correct thing to do for renamings.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * s-osinte-hpux.ads, s-taprop-vxworks.adb, s-taprop-tru64.adb,
+ s-osinte-vxworks.ads, s-osinte-aix.ads, s-osinte-lynxos.ads,
+ s-osinte-solaris-posix.ads, s-taprop-solaris.adb, a-exetim-posix.adb,
+ s-osinte-irix.ads, s-osinte-solaris.ads, s-oscons-tmplt.c,
+ s-taprop-irix.adb, s-osinte-hpux-dce.ads, Makefile.rtl,
+ s-osinte-tru64.ads, s-osinte-darwin.ads, s-taprop.ads,
+ s-osinte-freebsd.ads, s-osinte-lynxos-3.ads, s-taprop-hpux-dce.adb,
+ s-taprop-posix.adb: Remove hard-coded clock ids;
+ instead, generate them in System.OS_Constants.
+ (System.OS_Constants.CLOCK_RT_Ada): New constant denoting the
+ id of the clock providing Ada.Real_Time.Monotonic_Clock.
+ * thread.c: New file.
+ (__gnat_pthread_condattr_setup): New function. For platforms where
+ CLOCK_RT_Ada is not CLOCK_REALTIME, set appropriate condition
+ variable attribute.
+
+2011-11-23 Yannick Moy <moy@adacore.com>
+
+ * sem_ch3.adb: Restore the use of Expander_Active instead of
+ Full_Expander_Active, so that the evaluation is forced in Alfa
+ mode too. Otherwise, we end up with an unexpected insertion in a
+ place where it is not supposed to happen, on default parameters
+ of a call.
+
+2011-11-23 Thomas Quinot <quinot@adacore.com>
+
+ * prj-pp.adb, prj-pp.ads: Minor new addition: wrapper procedure "wpr"
+ for Pretty_Print, for use from within gdb.
+
+2011-11-23 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch5.adb (Expand_Iterator_Loop): Wrap the expanded loop
+ and the cursor declarations in a block, so that the loop variable
+ is local to the construct.
+
+2011-11-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-coorma.ads, a-ciorma.ads, a-cborma.ads (Iterate): Returns
+ type Reversible_Iterator'Class.
+ * a-coorma.adb, a-ciorma.adb, a-cborma.adb (Iterator):
+ Declare type as limited.
+ (First, Last): Return value depends on iterator's start node value.
+ (Next, Previous): Call corresponding Cursor-based operation.
+ (Iterate): Indicate whether complete or partial iteration
+
+2011-11-23 Robert Dewar <dewar@adacore.com>
+
+ * errout.adb: Minor reformattin (Finalize): Take templates into
+ account for warning suppression.
+ * errout.ads (Set_Specific_Warning_Off): Add Used parameter.
+ * erroutc.adb: Minor reformatting (Finalize): Take generic
+ templates into account for warning suppress.
+ * erroutc.ads (Set_Specific_Warning_Off): Add Used parameter.
+ * sem_prag.adb: Minor reformatting (Analyze_Pragma,
+ case Warnings): Provide Used parameter in call to
+ Set_Specific_Warnings_Off (to deal with generic template case).
+
+2011-11-23 Pascal Obry <obry@adacore.com>
+
+ * sem_prag.adb (Process_Convention): Better error message for
+ stdcall convention on dispatching calls.
+
+2011-11-23 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch4.adb, sem_ch13.adb: Minor reformatting.
+
+2011-11-23 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch6.adb (Expand_Simple_Function_Return): Add missing
+ implicit type conversion when the returned object is allocated
+ in the secondary stack and the type of the returned object is
+ an interface. Done to force generation of displacement of the
+ "this" pointer.
+
+2011-11-23 Pascal Obry <obry@adacore.com>
+
+ * impunit.adb: Add g-exptty and g-tty units.
+
+2011-11-23 Robert Dewar <dewar@adacore.com>
+
+ * exp_imgv.adb: Minor code reorganization (use Make_Temporary).
+
+2011-11-23 Robert Dewar <dewar@adacore.com>
+
+ * exp_util.adb, par-ch6.adb, sem_res.adb, par-util.adb: Minor
+ reformatting.
+
+2011-11-23 Yannick Moy <moy@adacore.com>
+
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Place error on
+ line of precondition/ postcondition/invariant.
+
+2011-11-23 Pascal Obry <obry@adacore.com>
+
+ * g-exptty.ads, g-exptty.adb, g-tty.ads, g-tty.adb,
+ terminals.c: New files.
+ Makefile.rtl: Add these new files.
+ * gnat_rm.texi: Add documentation for GNAT.Expect.TTY.
+ * gcc-interface/Makefile.in: Add g-exptty, g-tty, terminals.o
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * exp_imgv.adb (Expand_Width_Attribute): Handle case of Discard_Names.
+ * sem_attr.adb (Eval_Attribute, case Width): Ditto.
+
+2011-11-21 Thomas Quinot <quinot@adacore.com>
+
+ * sinfo.ads: Minor reformatting.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * exp_util.adb: Minor reformatting. Update comments.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * exp_prag.adb, exp_util.adb, sinfo.ads, sem_res.adb, s-stposu.adb,
+ sem_attr.adb, s-stposu.ads, s-taprop-solaris.adb, s-taprop-irix.adb,
+ sem_ch6.adb: Minor reformatting.
+
+2011-11-21 Arnaud Charlet <charlet@adacore.com>
+
+ * s-taprop-irix.adb, s-taprop-solaris.adb (Create_Task): Use
+ Unrestricted_Access to deal with fact that we properly detect the
+ error if Access is used.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * exp_prag.adb (Expand_Pragma_Check): Place error on first character
+ of expression.
+ * sem_res.adb (Resolve_Short_Circuit): Place error on first
+ character of expression.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * exp_util.adb (Remove_Side_Effects): Do nothing in Alfa mode.
+
+2011-11-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_attr.adb (Expand_N_Attribute_Reference, case
+ Max_Size_In_Storage_Elements): Account for the size of the
+ hidden list header which precedes controlled objects allocated
+ on the heap.
+ * rtsfind.ads: Add RE_Header_Size_With_Padding to the runtime
+ tables.
+ * sinfo.adb (Header_Size_Added): New routine.
+ (Set_Header_Size_Added): New routine.
+ * sinfo.ads: Add flag Controlled_Header_Added along with
+ associated comment.
+ (Header_Size_Added): New inlined routine.
+ (Set_Header_Size_Added): New inlined routine.
+ * s-stposu.adb (Allocate_Any_Controlled): Use
+ Header_Size_With_Padding to calculate the proper
+ size of the header.
+ (Deallocate_Any_Controlled): Use
+ Header_Size_With_Padding to calculate the proper size
+ of the header. (Header_Size_With_Padding): New routine.
+ (Nearest_Multiple_Rounded_Up): Removed along with its uses.
+ * s-stposu.ads (Header_Size_With_Padding): New routine.
+
+2011-11-21 Ed Schonberg <schonberg@adacore.com>
+
+ * aspects.adb: Aspect specifications are allowed on renaming
+ declarations
+ * par-ch6.adb (P_Subprogram): Parse aspect specifications in a
+ subprogram renaming declaration
+
+2011-11-21 Tristan Gingold <gingold@adacore.com>
+
+ * env.c: Remove unused declaration.
+
+2011-11-21 Pascal Obry <obry@adacore.com>
+
+ * s-os_lib.ads: Minor style fix.
+
+2011-11-21 Pascal Obry <obry@adacore.com>
+
+ * adaint.c (__gnat_dup2): When fd are stdout, stdin or stderr and
+ identical, do nothing on Windows XP.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl):
+ Use Full_Expander_Active instead of Expander_Active to control
+ the forced evaluation of expressions for the sake of generating
+ checks.
+
+2011-11-21 Thomas Quinot <quinot@adacore.com>
+
+ * init.c: On FreeBSD, stack checking failures may raise SIGBUS.
+
+2011-11-21 Tristan Gingold <gingold@adacore.com>
+
+ * sysdep.c (mode_read_text, mode_write_text, mode_append_text,
+ mode_read_binary, mode_write_binary, mode_append_binary,
+ mode_read_text_plus, mode_write_text_plus, mode_append_text_plus,
+ mode_read_binary_plus, mode_write_binary_plus,
+ mode_append_binary_plus): Remove unused declarations.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * gnat_rm.texi: Minor rewording.
+
+2011-11-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_imgv.adb (Expand_Width_Attribute): Emit
+ an error message rather than a warning when pragma Discard_Names
+ prevents the computation of 'Width. Do not emit an error through
+ the use of RE_Null.
+
+2011-11-21 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Add
+ implicit type conversion when the type of the allocator is an
+ interface. Done to force generation of displacement of the "this"
+ pointer when required.
+
+2011-11-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sinfo.ads, sinfo.adb: Corresponding_Spec applies to expression
+ functions, and is set when the expression is a completion of a
+ previous declaration.
+ * sem_ch6.adb (Analyze_Expression_Function): To determine properly
+ whether an expression function completes a previous declaration,
+ use Find_Corresponding_Spec, as when analyzing a subprogram body.
+
+2011-11-21 Steve Baird <baird@adacore.com>
+
+ * sem_util.adb (Deepest_Type_Access_Level): Improve comment.
+ (Type_Access_Level): Improve comment.
+
+2011-11-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/Makefile.in (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) by
+ means of -iquote unconditionally.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb, sem_util.adb, sem_res.adb, sem_attr.adb: Minor
+ reformatting.
+
+2011-11-21 Arnaud Charlet <charlet@adacore.com>
+
+ * s-taprop-posix.adb (Create_Task): Use Unrestricted_Access
+ to deal with fact that we properly detect the error if Access
+ is used.
+
+2011-11-21 Steve Baird <baird@adacore.com>
+
+ * sem_util.ads: Update comment describing function
+ Deepest_Access_Level.
+ * sem_util.adb (Deepest_Type_Access_Level): Return Int'Last for a
+ generic formal type.
+ (Type_Access_Level): Return library level
+ for a generic formal type.
+ * sem_attr.adb (Resolve_Attribute): Replace two Type_Access_Level
+ calls with calls to Deepest_Type_Access_Level.
+ * sem_ch3.adb (Analyze_Component_Declaration): replace a
+ Type_Access_Level call with a call to Deepest_Type_Access_Level.
+ * sem_res.adb (Resolve_Allocator.Check_Allocator_Discrim_Accessibility):
+ Replace three Type_Access_Level calls with calls to
+ Deepest_Type_Access_Level.
+ (Resolve_Allocator): Replace a Type_Access_Level call with a call to
+ Deepest_Type_Access_Level.
+ (Valid_Conversion.Valid_Array_Conversion): Replace a
+ Type_Access_Level call with a call to Deepest_Type_Access_Level.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb, s-taprop-vms.adb, opt.ads: Minor reformatting.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * sinput.ads: Minor comment fix.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * exp_attr.adb (Expand_N_Attribute_Reference, case First_Bit,
+ Last_Bit, Position): Handle 2005 case.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * s-atocou-builtin.adb (Decrement): Use Unrestricted_Access
+ to deal with fact that we properly detect the error if Access
+ is used.
+ (Increment): Same fix.
+ * s-taprop-linux.adb (Create_Task): Use Unrestricted_Access
+ to deal with fact that we properly detect the error if Access
+ is used.
+ * sem_util.adb (Is_Volatile_Object): Properly record that A.B is
+ volatile if the B component is volatile. This affects the check
+ for passing such a by reference volatile actual to a non-volatile
+ formal (which should be illegal)
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * freeze.adb (Freeze_Enumeration_Type): Make sure to set both
+ size and alignment for foreign convention enumeration types.
+ * layout.adb (Set_Elem_Alignment): Redo setting of alignment
+ when size is set.
+
+2011-11-21 Yannick Moy <moy@adacore.com>
+
+ * checks.adb (Apply_Access_Check, Apply_Arithmetic_Overflow_Check,
+ Apply_Discriminant_Check, Apply_Divide_Check,
+ Apply_Selected_Length_Checks, Apply_Selected_Range_Checks,
+ Build_Discriminant_Checks, Insert_Range_Checks, Selected_Length_Checks,
+ Selected_Range_Checks): Replace reference to Expander_Active
+ with reference to Full_Expander_Active, so that expansion of
+ checks is not performed in Alfa mode
+
+2011-11-21 Tristan Gingold <gingold@adacore.com>
+
+ * s-taprop-vms.adb (Create_Task): Use Unrestricted_Access to deal with
+ fact that we properly detect the error if Access is used.
+
+2011-11-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * par-ch4.adb (P_Quantified_Expression): Add an Ada 2012 check.
+
+2011-11-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_imgv.adb: Add with and use clause for Errout.
+ (Expand_Width_Attribute): Emit a warning when in
+ configurable run-time mode to provide a better diagnostic message.
+
+2011-11-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * s-finmas.adb (Finalize): Add comment concerning double finalization.
+
+2011-11-21 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Access_Definition): If the access definition
+ is itself the return type of an access to function definition
+ which is ultimately the return type of an access to subprogram
+ declaration, its scope is the enclosing scope of the ultimate
+ access to subprogram.
+
+2011-11-21 Steve Baird <baird@adacore.com>
+
+ * sem_res.adb (Valid_Conversion): If a conversion was legal
+ in the body of a generic, then the corresponding conversion is
+ legal in the expanded body of an instance of the generic.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb: Minor reformatting.
+
+2011-11-21 Robert Dewar <dewar@adacore.com>
+
+ * s-utf_32.adb (Is_UTF_32_Line_Terminator): Recognize NEL as
+ line terminator.
+ * sinput.ads: Add section on Handling of Source Line Terminators.
+ * types.ads (Line_Terminator): Adjust comments.
+