aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.7/gcc/ada/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.7/gcc/ada/ChangeLog')
-rw-r--r--gcc-4.7/gcc/ada/ChangeLog1504
1 files changed, 1504 insertions, 0 deletions
diff --git a/gcc-4.7/gcc/ada/ChangeLog b/gcc-4.7/gcc/ada/ChangeLog
new file mode 100644
index 000000000..9a48ee5d1
--- /dev/null
+++ b/gcc-4.7/gcc/ada/ChangeLog
@@ -0,0 +1,1504 @@
+2012-09-20 Release Manager
+
+ * GCC 4.7.2 released.
+
+2012-09-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Loop_Statement_to_gnu): Revert to using
+ size_type_node instead of sizetype.
+
+2012-07-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Try to ensure
+ that an object of CW type initialized to a value is sufficiently
+ aligned for this value.
+
+2012-07-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Do not
+ look up the REP part of the base type in advance. Deal with that of
+ the variant types.
+ (get_rep_part): Be prepared for record types with fields.
+
+2012-07-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Call_to_gnu): Robustify test for function case
+ if the CICO mechanism is used.
+
+2012-07-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils2.c (build_simple_component_ref): Do not look
+ through an extension if the type contains a placeholder.
+
+2012-07-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on
+ the designated subprogram type and also set Is_Dispatch_Table_Entity.
+ (Expand_Interface_Thunk): Propagate the convention on the thunk.
+ (Set_CPP_Constructors_Old): Set Is_Constructor and Convention_CPP on
+ the internal view of the constructors.
+ (Set_CPP_Constructors): Likewise.
+ * sem_prag.adb (Analyze_Pragma) <Pragma_CPP_Constructor>: Set the
+ convention on the function.
+ * gcc-interface/gigi.h (is_cplusplus_method): Declare.
+ * gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
+ (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the `thiscall'
+ calling convention
+ (get_minimal_subprog_decl): Likewise.
+ (is_cplusplus_method): New predicate.
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Issue an
+ error on access to C++ constructor or member function.
+
+2012-07-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types
+ attached to a TYPE_DECL.
+
+2012-06-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/53592
+ * gcc-interface/gigi.h (maybe_vector_array): Make static inline.
+ * gcc-interface/utils.c (maybe_vector_array): Delete.
+ * gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Mark the
+ array object as addressable if it has vector type and is on the LHS.
+
+2012-06-14 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc-interface/Makefile.in (gnatlib-shared-default): Append
+ $(PICFLAG_FOR_TARGET) to GNATLIBCFLAGS_FOR_C passed to submake.
+
+2012-06-14 Release Manager
+
+ * GCC 4.7.1 released.
+
+2012-06-13 Eric Botcazou <ebotcazou@adacore.com>
+
+ Revert
+ 2012-05-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
+ (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall
+ calling convention
+ (get_minimal_subprog_decl): Likewise.
+ (gnat_first_param_is_class): New predicate.
+
+2012-06-12 Olivier Hainque <hainque@adacore.com>
+
+ * gcc-interface/Makefile.in (GNATLIBCFLAGS_FOR_C): Remove
+ $(PIC_FLAG_FOR_TARGET).
+ (gnatlib-shared-default): Add $(PIC_FLAG_FOR_TARGET) to
+ GNATLIBCFLAGS_FOR_C passed to gnatlib.
+ (gnatlib-shared-win32): Likewise.
+ (gnatlib-shared-darwin): Likewise.
+ (gnatlib-shared-dual-win32): Pass PIC_FLAG_FOR_TARGET to
+ gnatlib-shared-win32.
+
+2012-05-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (variant_desc): Rename 'record' to 'new_type'.
+ (build_variant_list): Adjust to above renaming.
+ (gnat_to_gnu_entity) <E_Record_Subtype>: Likewise. Give a unique name
+ to the type of the variant containers.
+ (create_variant_part_from): Likewise. Give a unique name to the type
+ of the variant part.
+
+2012-05-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/52362
+ * link.c (__gnat_object_file_option): Set to "-Wl,@" for GNU linker.
+ (__gnat_using_gnu_linker): Delete.
+ * gnatlink.adb (Gnatlink): Declare Object_File_Option_Ptr here...
+ Declare Object_File_Option string constant and Using_GNU_response_file
+ boolean constant.
+ (Process_Binder_File): ...instead of here. Delete Using_GNU_Linker,
+ Opening and Closing local variables. Do not handle the GNU linker
+ specially.
+ (Write_RF): New procedure to write into the response file. Escape some
+ characters if a GNU response file is used. Keep track of error status.
+ Invoke Write_RF to write into the response file. Delete the file only
+ if the link was successful.
+ * mlib-utl.adb: Do not `with' package System.
+ (Gcc): Likewise. Declare Object_File_Option string constant and
+ Using_GNU_response_file boolean constant.
+ (Write_RF): Take a string instead of address and length. Escape some
+ characters if a GNU response file is used.
+ Invoke Write_RF to write into the response file. Delete the file only
+ if the link was successful. Do not warn if it cannot be deleted.
+
+2012-05-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (gnat_write_global_declarations): Put a name
+ on the dummy global variable.
+
+2012-05-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
+ (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall
+ calling convention
+ (get_minimal_subprog_decl): Likewise.
+ (gnat_first_param_is_class): New predicate.
+
+ Backport from mainline
+ 2012-05-15 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch3.adb (Build_Offset_To_Top): Modify the
+ expansion of the offset_to_top functions to ensure that their
+ profile is conformant with the profile specified in Ada.Tags. No
+ change in functionality.
+
+2012-05-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: For an object at
+ global level with unconstrained nominal subtype and a non-fixed size,
+ make a variable for the size.
+
+2012-05-15 Andris Pavenis <andris.pavenis@iki.fi>
+
+ PR ada/52494
+ * s-taprop-dummy.adb (Specific): New package.
+
+2012-05-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ * sem_prag.adb (Process_Atomic_Shared_Volatile): Propagate
+ atomicity from an object to its underlying type only if it
+ is composite.
+
+2012-05-06 Pascal Obry <obry@adacore.com>
+
+ Revert
+ 2012-02-24 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * gcc-interface/Makefile.in (WIN_SO_PREFIX [windows targets]): New
+ Windows-specific make variable.
+ (WIN_SO_INSTALL_DIR [windows targets]): Likewise.
+ (install-gnatlib): Respect the above during installation when set,
+ and also install any windows import library that has been built.
+ (gnatlib-shared-win32): Use WIN_SO_PREFIX to name output DLL and also
+ build a corresponding import library.
+
+2012-04-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (finish_record_type): Force the traditional GCC
+ layout for bitfields on the type if it is packed or has a representation
+ clause and an alternate layout is available.
+
+2012-04-09 Mike Stump <mikestump@comcast.net>
+
+ * a-assert.ads: Remove execute permission.
+ * a-chacon.ads: Likewise.
+ * a-coteio.ads: Likewise.
+ * a-envvar.ads: Likewise.
+ * a-exetim-mingw.ads: Likewise.
+ * a-fzteio.ads: Likewise.
+ * a-izteio.ads: Likewise.
+ * a-lcteio.ads: Likewise.
+ * a-llctio.ads: Likewise.
+ * a-scteio.ads: Likewise.
+ * a-suenco.ads: Likewise.
+ * a-suenst.ads: Likewise.
+ * a-suewst.ads: Likewise.
+ * a-suezst.ads: Likewise.
+ * a-tirsfi.ads: Likewise.
+ * a-wichha.ads: Likewise.
+ * a-zchara.ads: Likewise.
+ * a-zchhan.ads: Likewise.
+ * a-zchuni.ads: Likewise.
+ * a-zrstfi.ads: Likewise.
+ * aspects.ads: Likewise.
+ * g-byorma.ads: Likewise.
+ * g-decstr.ads: Likewise.
+ * g-encstr.ads: Likewise.
+ * g-spchge.ads: Likewise.
+ * g-u3spch.ads: Likewise.
+ * g-wispch.ads: Likewise.
+ * g-zspche.ads: Likewise.
+ * namet-sp.ads: Likewise.
+ * s-os_lib.ads: Likewise.
+ * s-regexp.ads: Likewise.
+ * s-regpat.ads: Likewise.
+ * s-string.ads: Likewise.
+ * s-tasloc.ads: Likewise.
+ * s-utf_32.ads: Likewise.
+ * sem_aux.ads: Likewise.
+ * a-assert.adb: Likewise.
+ * a-chacon.adb: Likewise.
+ * a-envvar.adb: Likewise.
+ * a-exetim-mingw.adb: Likewise.
+ * a-suenco.adb: Likewise.
+ * a-suenst.adb: Likewise.
+ * a-suewst.adb: Likewise.
+ * a-suezst.adb: Likewise.
+ * a-tirsfi.adb: Likewise.
+ * a-wichha.adb: Likewise.
+ * a-zchhan.adb: Likewise.
+ * a-zchuni.adb: Likewise.
+ * a-zrstfi.adb: Likewise.
+ * aspects.adb: Likewise.
+ * g-byorma.adb: Likewise.
+ * g-decstr.adb: Likewise.
+ * g-encstr.adb: Likewise.
+ * g-spchge.adb: Likewise.
+ * g-u3spch.adb: Likewise.
+ * g-wispch.adb: Likewise.
+ * g-zspche.adb: Likewise.
+ * namet-sp.adb: Likewise.
+ * s-except.adb: Likewise.
+ * s-inmaop-vxworks.adb: Likewise.
+ * s-os_lib.adb: Likewise.
+ * s-regexp.adb: Likewise.
+ * s-regpat.adb: Likewise.
+ * s-string.adb: Likewise.
+ * s-tasloc.adb: Likewise.
+ * s-utf_32.adb: Likewise.
+ * s-wchcon.adb: Likewise.
+ * sem_aux.adb: Likewise.
+
+2012-03-22 Release Manager
+
+ * GCC 4.7.0 released.
+
+2012-02-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (components_to_record): Add ARTIFICIAL parameter
+ and set TYPE_ARTIFICIAL according to it. Adjust recursive call.
+ (gnat_to_gnu_entity) <E_Record_Type>: Adjust call to above function.
+ * gcc-interface/utils.c (rest_of_record_type_compilation): Do not
+ invoke rest_of_type_decl_compilation on the parallel type, if any.
+
+2012-02-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (gnat_write_global_declarations): Make sure the
+ dummy global built for global types is preserved.
+
+2012-02-27 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) [E_String_Type,
+ E_Array_Type]: Reuse dummy fat type for gnu_ptr_template and
+ gnu_template_type.
+
+2012-02-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Add checking.
+ (TYPE_BY_REFERENCE_P): New flag.
+ (TYPE_IS_BY_REFERENCE_P): New macro.
+ (TYPE_DUMMY_P): Add checking and remove VOID_TYPE.
+ (TYPE_IS_DUMMY_P): Adjust for above change.
+ * gcc-interface/decl.c (gnat_to_gnu_entity): Use TYPE_BY_REFERENCE_P
+ and TYPE_IS_BY_REFERENCE_P instead of TREE_ADDRESSABLE.
+ (gnat_to_gnu_param): Likewise.
+ (maybe_pad_type): Likewise.
+ (make_type_from_size): Use TYPE_IS_PACKED_ARRAY_TYPE_P.
+ * gcc-interface/misc.c (must_pass_by_ref): Use TYPE_IS_BY_REFERENCE_P
+ instead of TREE_ADDRESSABLE.
+ * gcc-interface/trans.c (finalize_nrv): Likewise.
+ (call_to_gnu): Likewise. Do not create a temporary for return values
+ with by-reference type here.
+ (gnat_to_gnu): Test TYPE_IS_DUMMY_P instead of TYPE_DUMMY_P.
+ (gnat_gimplify_expr) <ADDR_EXPR>: Don't do anything for non-constant
+ CONSTRUCTORs and calls.
+ * gcc-interface/utils.c (make_dummy_type): Get the equivalent type of
+ the underlying type and use it throughout. Use TYPE_IS_BY_REFERENCE_P
+ instead of TREE_ADDRESSABLE.
+ * gcc-interface/utils2.c (build_cond_expr): Deal with by-reference
+ types explicitly.
+
+2012-02-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Revert previous
+ change that creates a special VAR_DECL for debugging purposes. For an
+ aliased object with an unconstrained nominal subtype, make its type a
+ thin reference to the underlying object.
+ * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: Deal with
+ expressions built for the initialization of above objects.
+
+2012-02-24 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * gcc-interface/Makefile.in (WIN_SO_PREFIX [windows targets]): New
+ Windows-specific make variable.
+ (WIN_SO_INSTALL_DIR [windows targets]): Likewise.
+ (install-gnatlib): Respect the above during installation when set,
+ and also install any windows import library that has been built.
+ (gnatlib-shared-win32): Use WIN_SO_PREFIX to name output DLL and also
+ build a corresponding import library.
+
+2012-02-22 Robert Dewar <dewar@adacore.com>
+
+ * exp_util.adb, make.adb, sem_dim.adb, sem_ch4.adb, exp_disp.adb: Minor
+ reformatting.
+
+2012-02-22 Geert Bosch <bosch@adacore.com>
+
+ * g-bytswa-x86.adb, g-bytswa.adb, gcc-interface/Makefile.in: Remove
+ x86-specific version of byteswap and use GCC builtins instead.
+
+2012-02-22 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) [E_String_Type,
+ E_Array_Type]: Translate component ealier.
+
+2012-02-22 Robert Dewar <dewar@adacore.com>
+
+ * par-ch3.adb (P_Signed_Integer_Type_Definition): Specialize
+ error message for 'Range.
+
+2012-02-22 Pascal Obry <obry@adacore.com>
+
+ * s-taprop-mingw.adb (Finalize_TCB): Do not wait on thread handle as
+ this is our own thread.
+
+2012-02-22 Sergey Rybin <rybin@adacore.com frybin>
+
+ * tree_io.ads: Update ASIS_Version_Number because of the changes
+ in Snames.
+
+2012-02-22 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch7.adb (Create_Finalizer): Suppress elaboration checks on
+ stack-related finalizers.
+
+2012-02-22 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Expression_Function): If the construct
+ is a completion, indicate that its formals are the formals of
+ a completion, and as such do not get a cross- reference entry.
+ (Analyze_Subprogram_Specification): Do not generate a definition
+ for the entity of an expression function, because it may be a
+ completion. Definition will be generated if needed when analyzing
+ the generated subprogram declaration.
+
+2012-02-22 Vincent Celier <celier@adacore.com>
+
+ * make.adb (Check): When checking if an object file is in the
+ correct object directory, get the unit name from a previous call
+ to Check_Source_Info_In_ALI.
+ * makeutl.adb (Check_Source_Info_In_ALI): Return the name of
+ the unit when everything is OK, otherwise return No_Name.
+ * makeutl.ads (Check_Source_Info_In_ALI): Return Name_Id instead
+ of Boolean
+
+2012-02-22 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch4.adb (Find_Equality_Types, Try_One_Interp): In an
+ instance, the operator is visible if an operand is of some
+ numeric type which is not in use or directly visible, and the
+ other operand is a numeric literal.
+
+2012-02-22 Tristan Gingold <gingold@adacore.com>
+
+ * init.c: Minor code clean up.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2012-02-22 Arnaud Charlet <charlet@adacore.com>
+
+ * gnatlink.adb (Gnatlink): Use -gnatcC in CodePeer_Node,
+ otherwise GCC will generate an object file.
+
+2012-02-22 Vincent Celier <celier@adacore.com>
+
+ * projects.texi: Correct typo related to "**" in Source_Dirs.
+
+2012-02-22 Steve Baird <baird@adacore.com>
+
+ * sem_prag.adb (Analyze_PPC_In_Decl_Part): Clean up generation of
+ error message text.
+
+2012-02-22 Vincent Pucci <pucci@adacore.com>
+
+ * rtsfind.adb (Get_Unit_Name): Ada_Numerics_Child and
+ System_Dim_Child cases added.
+ * rtsfind.ads: Ada_Numerics,
+ Ada_Numerics_Generic_Elementary_Functions, System_Dim,
+ System_Dim_Float_IO and System_Dim_Integer_IO added to the list
+ of RTU_Id. Ada_Numerics_Child and System_Dim_Child added as
+ new RTU_Id subtypes.
+ * sem_dim.adb (Is_Dim_IO_Package_Entity): Use of
+ Rtsfind to verify the package entity is located either
+ in System.Dim.Integer_IO or in System.Dim.Float_IO.
+ (Is_Dim_IO_Package_Instantiation): Minor
+ changes. (Is_Elementary_Function_Call): Removed.
+ (Is_Elementary_Function_Entity): New routine.
+ (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity call added.
+ * snames.ads-tmpl: Name_Dim and Name_Generic_Elementary_Functions
+ removed.
+
+2012-02-22 Vincent Pucci <pucci@adacore.com>
+
+ * sem_prag.adb: Minor reformatting.
+
+2012-02-22 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Find_Type_Name): When analyzing a private type
+ declaration that is the completion of a tagged incomplete type, do
+ not associate the class-wide type already created with the private
+ type to prevent order-of-elaboration issues in the back-end.
+ * exp_disp.adb (Find_Specific_Type): Find specific type of
+ a class-wide type, and handle the case of an incomplete type
+ coming either from a limited_with clause or from an incomplete
+ type declaration. Used when expanding a dispatchin call and
+ generating tag checks (minor refactoring).
+
+2012-02-22 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch5.adb: Add comment.
+ * sem_ch12.adb, exp_ch6.adb: minor reformatting
+
+2012-02-22 Ed Schonberg <schonberg@adacore.com>
+
+ * freeze.adb (Freeze_Entity): Do not perform type layout within
+ a generic unit.
+
+2012-02-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ * init.c (__gnat_error_handler) [Linux]: Map SIGBUS to
+ Storage_Error.
+
+2012-02-22 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch5.adb (Expand_N_Assignment_Statement): Reject an
+ assignment to a classwide type whose type is limited, as
+ can happen in an instantiation in programs that run afoul or
+ AI05-0087.
+
+
+2012-02-17 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch6.adb (Legal_Copy): If layout is not
+ determined in the front-end, do not emit error message when
+ by-reference actual is potentially unaligned.
+ * gcc-interface/decl.c (gnat_to_gnu_field): Better error message for
+ illegal representation clause on tagged or aliased component, or on
+ by-reference type with forced alignment.
+
+2012-02-17 Nicolas Roche <roche@adacore.com>
+
+ * gcc-interface/Makefile.in: Ensure FORCE_DEBUG_ADAFLAGS variables is
+ propagated by gnatlib-sjlj and gnatlib-zcx targets.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2012-02-17 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch12.adb (Analyze_Package_Instantiation): For an
+ instantiation in an RCI library unit, omit the instance body
+ if the RCI library unit is the instance itself (E.2.3(18)),
+ but include the body if the instantiation is within the RCI
+ declaration (12.3(12)).
+
+2012-02-17 Steve Baird <baird@adacore.com>
+
+ * sem_prag.adb (Analyze_PPC_In_Decl_Part): Pre'Class and
+ Post'Class aspects can only be specified for a primitive operation
+ of a tagged type.
+
+2012-02-17 Yannick Moy <moy@adacore.com>
+
+ * gnat_rm.texi: Minor shuffling.
+
+2012-02-17 Ed Schonberg <schonberg@adacore.com>
+
+ * aspects.adb: Expression functions can carry pre/postconditions.
+ * par-ch6.adb (P_Subprogram): look for optional pre/postconditions
+ in an expression function.
+ * sem_prag (Check_Precondition_Postcondition): legal on expression
+ functions.
+
+2012-02-17 Vincent Pucci <pucci@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cihama.adb, a-cimutr.adb,
+ * a-ciorma.adb, a-cohama.adb, a-coinve.adb, a-comutr.adb,
+ * a-convec.adb, a-coorma.adb (Adjust): New routine.
+ (Constant_Reference): Increment Busy and Lock counters.
+ (Reference): Increase Busy and Lock counters.
+ (Finalize): New routine.
+ * a-cihase.adb, a-ciorse.adb, a-cohase.adb, a-coorse.adb:
+ (Adjust): New routine. (Constant_Reference): Increment Busy
+ and Lock counters.
+ (Finalize): New routine.
+ * a-cdlili.ads, a-cidlli.ads, a-cihama.ads, a-cihase.ads,
+ * a-cimutr.ads, a-ciorma.ads, a-ciorse.ads, a-cohama.ads,
+ * a-cohase.ads, a-coinve.ads, a-comutr.ads, a-convec.ads,
+ * a-coorma.ads, a-coorse: Controlled component added to the
+ reference types.
+
+2012-02-17 Robert Dewar <dewar@adacore.com>
+
+ * restrict.adb (Check_Restriction): Add special handling for
+ No_Obsolescent_Features.
+
+2012-02-17 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_util.adb (Find_Finalize_Address): When dealing with an
+ internally built full view for a type with unknown discriminants,
+ use the original record type.
+
+2012-02-17 Robert Dewar <dewar@adacore.com>
+
+ * sem_dim.adb: Minor reformatting.
+
+2012-02-17 Yannick Moy <moy@adacore.com>
+
+ * gnat_rm.texi: Minor rewording.
+
+2012-02-17 Thomas Quinot <quinot@adacore.com>
+
+ * sem_aggr.adb: Minor reformatting.
+
+2012-02-17 Robert Dewar <dewar@adacore.com>
+
+ * gnat_ugn.texi: Update doc for -gnatw.m to include 2*x case.
+
+2012-02-17 Vincent Pucci <pucci@adacore.com>
+
+ * sem_dim.adb (Is_Dim_IO_Package_Entity): New routine.
+ (Is_Dim_IO_Package_Instantiation): Is_Dim_IO_Package_Entity
+ call added.
+ (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity
+ call added.
+ * s-dim.ads: Make package Pure.
+
+2012-02-17 Gary Dismukes <dismukes@adacore.com>
+
+ * prj-nmsc.adb: Minor reformatting.
+
+2012-02-17 Yannick Moy <moy@adacore.com>
+
+ * gnat_rm.texi: Update GNAT RM with a separate chapter on restrictions.
+
+2012-02-17 Yannick Moy <moy@adacore.com>
+
+ * gnat_ugn.texi: Fix typos.
+
+2012-02-17 Pascal Obry <obry@adacore.com>
+
+ * prj-nmsc.adb: prj-nmsc.adb (Check_Aggregated): Check that an
+ aggregate is not Externally_Built.
+
+2012-02-17 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_aggr.adb (Resolve_Record_Aggregate): If a composite
+ component has a box association, copy the default value using
+ the current scope as the scope of internal types, to prevent
+ scoping anomalies in gigi.
+
+2012-02-17 Robert Dewar <dewar@adacore.com>
+
+ * sem_dim.adb, sem_dim.ads, s-tasren.adb, prj.adb, prj.ads, freeze.adb,
+ sem_res.adb, exp_ch4.adb, sinput.adb, sinput.ads, exp_aggr.adb,
+ exp_intr.adb, s-os_lib.adb: Minor reformatting.
+
+2012-02-17 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Is_Non_Overriding_Operation): Add warning if the
+ old operation is abstract, the relevant type is not abstract,
+ and the new subprogram fails to override.
+
+2012-02-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Identifier_to_gnu): Move block retrieving the
+ type of the result to the end and execute it for a deferred constant of
+ a discriminated type whose full view can be elaborated statically.
+
+2012-02-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu) <N_Qualified_Expression>: If the
+ type is tagged, mark it as used for debugging purposes.
+ <N_Allocator>: Likewise for a qualified expression.
+
+2012-02-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (call_to_gnu): Create the temporary for the
+ return value in the by-reference return type case if this isn't the
+ expression of an object declaration. Tidy up.
+
+2012-02-09 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/Makefile.in: Remove .sym rule (not used).
+ Remove adamsg.o object (requires native message compiler).
+ * init.c (CMA$_EXIT_THREAD, MTH$_FLOOVEMAT, SS$_INTDIV): Define as a
+ macro instead of as extern int.
+ (ADA$_ALREADY_OPEN, ADA$_CONSTRAINT_ERRO, ADA$_DATA_ERROR)
+ (ADA$_DEVICE_ERROR, ADA$_END_ERROR, ADA$_FAC_MODE_MISMAT)
+ (ADA$_IOSYSFAILED, ADA$_KEYSIZERR, ADA$_KEY_MISMATCH)
+ (ADA$_LAYOUT_ERROR, ADA$_LINEXCMRS, ADA$_MAXLINEXC)
+ (ADA$_MODE_ERROR, ADA$_MRN_MISMATCH, ADA$_MRS_MISMATCH)
+ (ADA$_NAME_ERROR, ADA$_NOT_OPEN, ADA$_ORG_MISMATCH)
+ (ADA$_PROGRAM_ERROR, ADA$_RAT_MISMATCH, ADA$_RFM_MISMATCH)
+ (ADA$_STAOVF, ADA$_STATUS_ERROR, ADA$_STORAGE_ERROR)
+ (ADA$_UNSUPPORTED, ADA$_USE_ERROR): Likewise.
+ (struct cond_except): Field cond is now an unsigned int.
+ (dec_ada_cond_except_table): Adjust.
+ (cond_except_table): Likewise.
+ (cond_resignal_table): Likewise.
+ (__gnat_default_resignal_p): Fix style.
+
+2012-02-08 Vincent Celier <celier@adacore.com>
+
+ * gcc-interface/Make-lang.in: Add g-byorma.o to gnatbind objects
+ (g-buorma is now imported by sinput).
+ Update dependencies.
+ * scn.adb (Initialize_Scanner): Call Check_For_BOM
+ * sinput-p.adb (Source_File_Is_Subunit): Call Check_For_BOM
+ * sinput.adb: New procedure Check_For_BOM
+ * sinput.ads: New procedure Check_For_BOM
+
+2012-02-08 Vincent Pucci <pucci@adacore.com>
+
+ * impunit.adb: Dimension package names updated
+ * Makefile.rtl: s-dim added
+ * sem_dim.adb (Is_Procedure_Put_Call): minor changes
+ (Is_Dim_IO_Package_Instantiation): minor changes
+ * sem_dim.ads: minor changes in comments
+ * snames.ads-tmpl: Name_Dim added Name_Dim_Float_IO and
+ Name_Dim_Integer_IO removed
+ * s-dim.ads: New package. Define the dimension terminology.
+ * s-diflio.adb, s-diinio.adb, s-dimkio.ads, s-dimmks.ads,
+ * s-dmotpr.ads: Package names updated.
+ * s-diflio.ads, s-diinio.ads: Documentation added and package
+ names updated.
+
+2012-02-08 Gary Dismukes <dismukes@adacore.com>
+
+ * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): Revise test
+ for storage pools to test for an underlying record type rather than
+ testing Is_Tagged_Type, so that simple storage pools will be handled
+ the same as normal Ada storage pools.
+
+2012-02-08 Yannick Moy <moy@adacore.com>
+
+ * gnat_rm.texi: Minor reshuffling to place restriction at
+ appropriate place.
+
+2012-02-08 Bob Duff <duff@adacore.com>
+
+ * warnsw.adb (Set_Warning_Switch): Set Warn_On_Suspicious_Modulus_Value
+ False for '-gnatwA', to suppress these warnings.
+
+2012-02-08 Vincent Celier <celier@adacore.com>
+
+ * sinput-p.adb (Source_File_Is_Subunit): Check for BOM before
+ starting to scan, so that UTF8 encoding is taken into account.
+
+2012-02-08 Arnaud Charlet <charlet@adacore.com>
+
+ * s-tasren.adb, s-tasren.ads (Internal_Complete_Rendezvous): New
+ function.
+ (Complete_Rendezvous): Now call Internal_Complete_Rendezvous.
+ (Exceptional_Complete_Rendezvous): Mark No_Return.
+
+2012-02-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_aggr.adb (Compile_Time_Known_Composite_Value):
+ New predicate to compute whether a composite value can be
+ evaluated at compile time.
+ (Component_Not_OK_For_Backend): Use Compile_Time_Known_Value for all
+ expressions of elementary type and Compile_Time_Known_Composite_Value
+ for all other expressions.
+ (Expand_Record_Aggregate): Convert to assignments in the case
+ of a type with mutable components if the aggregate cannot be
+ built statically.
+
+2012-02-08 Gary Dismukes <dismukes@adacore.com>
+
+ * aspects.ads (type Aspect_Id): Add Simple_Storage_Pool_Type.
+ (Impl_Defined_Aspects): Add association for
+ Aspect_Simple_Storage_Pool_Type.
+ (Aspect_Names): Add
+ association for Aspect_Simple_Storage_Pool_Type.
+ * aspects.adb:
+ (Canonical_Aspect): Add association for Simple_Storage_Pool_Type.
+ * exp_attr.adb (Expand_N_Attribute_Reference):
+ Change name to Name_Simple_Storage_Pool_Type.
+ * exp_ch4.adb (Expand_N_Allocator): Change
+ name to Name_Simple_Storage_Pool_Type.
+ * exp_intr.adb (Expand_Unc_Deallocation): Change name to
+ Name_Simple_Storage_Pool_Type. * freeze.adb (Freeze_Entity):
+ Change names to Name_Simple_Storage_Pool_Type. * par-prag.adb:
+ Change names to Name_Simple_Storage_Pool_Type. * sem_attr.adb:
+ (Analyze_Attribute): Change name to Name_Simple_Storage_Pool_Type.
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause):
+ Change name to Name_Simple_Storage_Pool_Type.
+ * sem_prag.adb:
+ (Analyze_Pragma): Change name to Name_Simple_Storage_Pool_Type.
+ (Sig_Flags): Change name to Name_Simple_Storage_Pool_Type.
+ * sem_res.adb (Resolve_Allocator): Change name to
+ Name_Simple_Storage_Pool_Type. * snames.ads-tmpl:
+ (Name_Simple_Storage_Pool_Type): New name constant.
+ (type Pragma_Id): Change name to Name_Simple_Storage_Pool_Type and
+ move to main pragma section because it no longer matches the
+ attribute name.
+ * snames.adb-tmpl (Get_Pragma_Id): Remove test for
+ Name_Simple_Storage_Pool.
+ (Is_Pragma_Name): Remove test for Name_Simple_Storage_Pool.
+
+2012-02-08 Robert Dewar <dewar@adacore.com>
+
+ * gnat_ugn.texi: Add some clarification to -gnatwA and -gnatws.
+
+2012-02-08 Pascal Obry <obry@adacore.com>
+
+ * prj.adb (Compute_All_Imported_Projects): Use new
+ For_Project_And_Aggregated_Context to ensure proper context is
+ used for encapsulated aggregate libraries.
+ * prj-proc.adb (Recursive_Process): Call
+ Process_Aggregated_Projects earlier to ensure that all dependent
+ projects are set with the proper encapsulated status.
+
+2012-02-08 Pascal Obry <obry@adacore.com>
+
+ * s-os_lib.adb (Normalize_Arguments): Properly escape last \ in null
+ terminated string.
+
+2012-02-08 Pascal Obry <obry@adacore.com>
+
+ * prj.ads, prj.adb (For_Project_And_Aggregated_Context): New
+ generic routine with a context parameter.
+
+2012-02-08 Robert Dewar <dewar@adacore.com>
+
+ * a-coinve.adb, sem_util.adb, sem_ch8.adb, a-cobove.adb,
+ a-convec.adb: Minor reformatting and code reorganization.
+
+2012-02-08 Steve Baird <baird@adacore.com>
+
+ * sem_cat.adb (In_Preelaborated_Unit): A child
+ unit instantiation does not inherit preelaboration requirements
+ from its parent.
+
+2012-02-08 Gary Dismukes <dismukes@adacore.com>
+
+ * aspects.ads (type Aspect_Id): Add Aspect_Simple_Storage_Pool.
+ (Impl_Defined_Aspects): Add entry for Aspect_Simple_Storage_Pool.
+ (Aspect_Argument): Add Name entry for Aspect_Simple_Storage_Pool.
+ (Aspect_Names): Add entry for Aspect_Simple_Storage_Pool.
+ * aspects.adb (Canonical_Aspect): Add entry for
+ Aspect_Simple_Storage_Pool.
+ * exp_attr.adb (Expand_N_Attribute_Reference): Handle case of
+ Attribute_Simple_Storage_Pool in the same way as Storage_Pool
+ (add conversion, analyze/resolve). For the Storage_Size attribute,
+ for the simple pool case, locate and use the simple pool type's
+ Storage_Size function (if any), otherwise evaluate to zero.
+ * exp_ch4.adb (Expand_N_Allocator): In the case of an allocator
+ for an access type with an associated simple storage pool,
+ locate and use the pool type's Allocate.
+ * exp_intr.adb (Expand_Unc_Deallocation): In the case where the
+ access type has a simple storage pool, locate the pool type's
+ Deallocate procedure (if present) and use it as the procedure
+ to call on the Free operation.
+ * freeze.adb (Freeze_Entity): In the case of a full type for
+ a private type defined with pragma Simple_Storage_Pool, check
+ that the full type is also appropriate for the pragma. For
+ a simple storage pool type, validate that the operations
+ Allocate, Deallocate (if present), and Storage_Size
+ (if present) are defined with appropriate expected profiles.
+ (Validate_Simple_Pool_Op_Formal): New procedure
+ (Validate_Simple_Pool_Operation): New procedure Add with and
+ use of Rtsfind.
+ * par-prag.adb: Add Pragma_Simple_Storage_Pool to case statement
+ (no action required).
+ * sem_attr.adb (Analyze_Attribute): For the case of the
+ Storage_Pool attribute, give a warning if the prefix type has an
+ associated simple storage pool, and rewrite the attribute as a
+ raise of Program_Error. In the case of the Simple_Storage_Pool
+ attribute, check that the prefix type has an associated simple
+ storage pool, and set the attribute type to the pool's type.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Add
+ Aspect_Simple_Storage_Pool case choice.
+ (Analyze_Attribute_Definition_Clause): Add
+ Aspect_Simple_Storage_Pool to case for Ignore_Rep_Clauses
+ (no action). Add handling for Simple_Storage_Pool attribute
+ definition, requiring the name to denote a simple storage pool
+ object.
+ (Check_Aspect_At_Freeze_Point): For a simple storage pool
+ aspect, set the type to that of the name specified for the aspect.
+ * sem_prag.adb (Analyze_Pragma): Add handling for pragma
+ Simple_Storage_Pool, requiring that it applies to a library-level
+ type declared in a package declaration that is a limited private
+ or limited record type.
+ * sem_res.adb (Resolve_Allocator): Flag an attempt to call a
+ build-in-place function in an allocator for an access type with
+ a simple storage pool as unsupported.
+ * snames.ads-tmpl: Add Name_Simple_Storage_Pool.
+ (type Attribute_Id): Add Attribute_Simple_Storage_Pool.
+ (type Pragma_Id): Add Pragma_Simple_Storage_Pool.
+ * snames.adb-tmpl (Get_Pragma_Id): Handle case of
+ Name_Simple_Storage_Pool.
+ (Is_Pragma_Name): Return True for Name_Simple_Storage_Pool.
+
+2012-02-08 Cyrille Comar <comar@adacore.com>
+
+ * projects.texi: Clarify doc for interfaces.
+
+2012-02-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/Make-lang.in (GCC_LINKERFLAGS): New variable.
+ (GCC_LINK): Use it.
+
+2012-02-01 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/trans.c (Loop_Statement_to_gnu): Use sizetype
+ instead of size_type_node.
+
+2012-01-30 Nicolas Roche <roche@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+ * gcc-interface/Makefile.in: Use system-vxworks-system-ppc-mils.ads
+ when needed.
+ Remove Linker_Options -crtbe when building sjlj run-time.
+
+2012-01-30 Robert Dewar <dewar@adacore.com>
+
+ * sem.adb (Analyze): Call Analyze_Mod for N_Op_Mod mode.
+ * sem_ch3.adb (Modular_Type_Declaration): Warn on mod value of
+ form 2 * small-literal.
+ * sem_ch4.adb (Analyze_Mod): New procedure (warn on suspicious
+ mod value).
+ * sem_ch4.ads (Analyze_Mod): New procedure.
+
+2012-01-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb: sem_ch6.adb (Analyze_Expression_Function): Copy
+ types and return expression when building spec for implicit
+ body, to preserve global references that may be present in an
+ instantiation.
+
+2012-01-30 Matthew Heaney <heaney@adacore.com>
+
+ * a-convec.adb, a-coinve.adb, a-cobove.adb (Sort,
+ Reverse_Elements): Check for cursor tampering.
+
+2012-01-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_util.adb (Is_Fully_Initialized_Type): In Ada 2012, a
+ type with aspect Default_Value or Default_Component_Value is
+ fully initialized, and use of variables of such types do not
+ generate warnings.
+
+2012-01-30 Javier Miranda <miranda@adacore.com>
+
+PR ada/15846
+ * sem_ch8.adb (Analyze_Subprogram_Renaming):
+ Handle self-renaming when the renamed entity is referenced using
+ its expanded name.
+
+2012-01-30 Vincent Celier <celier@adacore.com>
+
+ * projects.texi: Add documentation for attribute Interfaces.
+
+2012-01-30 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch7.adb (Build_Finalizer_Call): Set loc again.
+ * exp_ch11.adb (Expand_At_End_Handler): Do not provide a source
+ location for the wrapped call to the original AT_END routine
+ and the subsequent return statement.
+
+2012-01-30 Pascal Obry <obry@adacore.com>
+
+ * s-rannum.adb: Minor reformatting.
+
+2012-01-30 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * a-calend-vms.adb, a-calend.adb: Increment the number of leap seconds
+ to 25 and add the hard time value for 2012-06-30.
+
+2012-01-30 Robert Dewar <dewar@adacore.com>
+
+ * a-strhas.ads, einfo.adb, einfo.ads, exp_ch7.adb, exp_ch9.adb,
+ freeze.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-proc.adb, s-llflex.ads,
+ s-ransee.adb, s-ransee.ads, sem_ch13.adb, sem_dim.adb, sem_prag.adb:
+ Minor reformatting/code reorganization.
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-rannum.adb, s-ransee.adb, s-ransee.ads (Get_Seed): Return
+ Unsigned_64 rather than Duration.
+ (System.Random_Numbers.Reset): Use full value of seed
+ (do not truncate sub-second bits).
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * sem_cat.adb, sem_ch12.adb: Minor reformatting.
+
+2012-01-30 Yannick Moy <moy@adacore.com>
+
+ * gnat_ugn.texi: Minor correction of GNAT UG, to take into
+ account changes to -gnatwa and more recent warnings.
+
+2012-01-30 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch7.adb (Build_Finalizer_Call): Do not provide a source
+ location when creating a call to a finalizer.
+ * exp_ch11.adb (Expand_Exception_Handlers): Do not provide
+ a source location for the first actual of Save_Occurrence for
+ consistency sake.
+
+2012-01-30 Ed Schonberg <schonberg@adacore.com>
+
+ * einfo.ads, einfo,adb: New attribute on scalar types:
+ Default_Aspect_Value New attribute on array types:
+ Default_Aspect_Component_Value Move attribute Related_Array_Object
+ to a different position to accomodate new aspect attributes.
+ * freeze.adb (Freeze_Entity): Use new attributes to retrieve value
+ of defaults set with an aspect specification, rather than using
+ the list of aspects attached to the type, to prevent issues with
+ partial views.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): For aspects
+ Default_Value and Default_Component _Value, store corresponding
+ expression in type entity.
+ (Check_Aspect_At_End_Of_Declaration): If the default aspects
+ are declared on the full view, use the full view to resolve the
+ correseponding expression.
+ * exp_ch3.adb (Init_Component): Use attribute
+ Default_Aspect_Component_Value to perform default initialization,
+ rather than relying on the rep item list for the type.
+ (Get_Simple_Init_Val): Ditto.
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * a-strhas.ads: Document risk of collision attack.
+
+2012-01-30 Yannick Moy <moy@adacore.com>
+
+ * gnat_ugn.texi: Minor update wrt warning switches.
+
+2012-01-30 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Check_Interfaces): Report an error when a
+ unit from Library_Interface is not a unit of the project.
+
+2012-01-30 Vincent Pucci <pucci@adacore.com>
+
+ * sem_prag.adb (Make_Aspect_For_PPC_In_Gen_Sub_Decl): Parent
+ links fixed inside PPC pragmas.
+ * sem_ch12.adb: Move call to Make_Aspect_For_PPC_In_Gen_Sub_Decl.
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-ransee.ads: Minor reformatting.
+
+2012-01-30 Pascal Obry <obry@adacore.com>
+
+ * prj.ads, prj.adb (For_Each_Source): Add support for skipping
+ sources coming from an encapsulated library.
+
+2012-01-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Process-Full_View): fix typo.
+ * sem_ch13.adb (Aalyze_Aspect_Specifications): if predicates
+ appear on a private type and the full view is available, ensure
+ existence of freeze node for full view.
+ (Build_Predicate_Function): Attach predicate function to both
+ views of a private type.
+
+2012-01-30 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Check_Interfaces): Compute the Lib_Interface_ALIs
+ for the project if either attribute Library_Interface or
+ Interfaces is declared.
+ (Check_Stand_Alone_Library): Use Lib_Interface_ALIs computed in
+ Check_Interfaces.
+
+2012-01-30 Pascal Obry <obry@adacore.com>
+
+ * prj-proc.adb (Recursive_Process): Set From_Encapsulated_Lib
+ boolean value to true in the process list created by this routine.
+ * prj.ads (Project_List_Element): New field From_Encapsulated_Lib.
+ Continued work for KA06-021.
+ * prj.adb (Compute_All_Imported_Projects): Set
+ From_Encapsulated_Lib boolean flag.
+
+2012-01-30 Vincent Pucci <pucci@adacore.com>
+
+ * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Minor
+ code clean up.
+ * s-diflio.ads: Minor change.
+
+2012-01-30 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch9.adb (Build_Dispatching_Requeue): Add missing call
+ to Get_Entry_Index. Required to generate code which provides
+ the correct value of Entry_Index in the target entry.
+
+2012-01-30 Nicolas Roche <roche@adacore.com>
+
+ * system-vxworks-ppc.ads: Add pragma Linker_Options -crtbe to
+ fix issue with zcx on VxWorks5.
+
+2012-01-30 Pascal Obry <obry@adacore.com>
+
+ * prj.ads, prj.adb (For_Every_Project_Imported): Remove
+ In_Aggregate_Lib.
+ (For_Every_Project_Imported_Context): New generic routine with
+ a context parameter.
+ * prj-nmsc.adb: Revert to use For_Every_Project_Imported Avoid
+ distributed complexity.
+ * prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: Ditto.
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * exp_aggr.adb (Expand_Record_Aggregate): After creating the
+ _parent aggregate for an extension aggregate, check whether it
+ requires delayed (top-down) expansion.
+
+2012-01-30 Vincent Pucci <pucci@adacore.com>
+
+ * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Rewritten.
+ * snames.ads-tmpl: Name_Item and Name_Symbols added.
+ * s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads: Rename
+ and change the position of parameter Symbols in every Put routine.
+ * s-dimmks.ads: Convert long float type Mks_Type into long
+ long float.
+ * s-llflex.ads: Modifications in comments.
+
+2012-01-30 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch12.adb (Earlier): Do not use the
+ top level source locations of the two input nodes.
+
+2012-01-30 Robert Dewar <dewar@adacore.com>
+
+ * einfo.ads, sem_prag.adb, sem_attr.adb, aspects.ads,
+ sem_cat.adb, sem_aggr.adb, exp_aggr.adb: Minor reformatting.
+
+2012-01-30 Robert Dewar <dewar@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting.
+
+2012-01-30 Olivier Hainque <hainque@adacore.com>
+
+ * sigtramp-ppcvxw.c (CFI_COMMON_REGS): Add rule for r1 back +
+ comments.
+
+2012-01-30 Thomas Quinot <quinot@adacore.com>
+
+ * gnat_rm.texi, sem_dist.adb, sem_dist.ads, einfo.ads, sem_prag.adb,
+ sem_ch12.adb, sem_attr.adb, aspects.adb, aspects.ads, par-prag.adb,
+ sem_cat.adb, snames.ads-tmpl (Sem_Dist.Is_Valid_Remote_Object_Type):
+ New subprogram (extracted from
+ Sem_Cat.Validate_Remote_Access_Object_Type_Declaration).
+ (Einfo.Is_Remote_Types): Now applies to generic types. Update
+ documentation accordingly.
+ (Sem_Ch12.Analyze_Associations): A RACW type is acceptable as
+ actual for a formal type to which a pragma Remote_Access_Type
+ applies.
+ (Aspects, Par.Prag, Sem_Prag): Support for new pramga/aspect
+ Remote_Access_Type.
+ (Sem_Attr.Analyze_Attribute, case Stub_Type): Attribute can
+ be applied to a generic type if pragma Remote_Access_Type
+ applies, in which case the type of the attribute is
+ System.Partition_Interface.RACW_Stub_Type.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not set
+ an alignment on fields of the RETURN type built for the CICO mechanism.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu): Avoid making a SAVE_EXPR for
+ a call to a function that returns an unconstrained type with default
+ discriminant. Similarly, avoid doing the conversion to the nominal
+ result type in this case.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/ada-tree.h (DECL_ALIASED_P): New flag.
+ * gcc-interface/decl.c (is_variable_size): Rename to...
+ (type_has_variable_size): ...this.
+ (adjust_packed): Adjust to above renaming.
+ (gnat_to_gnu_field): Set DECL_ALIASED_P on the field.
+ (field_is_artificial): New predicate.
+ (field_is_aliased): Likewise.
+ (field_has_self_size): Likewise.
+ (field_has_variable_size): Likewise.
+ (components_to_record): Record information for the final layout during
+ the first pass on fields.
+ If there is an aliased field placed after a field whose length depends
+ on discriminants, put all the fields of the latter sort, last.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (get_minimal_subprog_decl): Declare.
+ * gcc-interface/decl.c (get_minimal_subprog_decl): New function.
+ * gcc-interface/trans.c (Attribute_to_gnu): Use it for the prefix of an
+ Access-like attribute in a dispatch table if the subprogram is public.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (create_label_decl): Adjust.
+ * gcc-interface/utils.c (create_label_decl): Add GNAT_NODE parameter
+ and invoke gnat_pushdecl on it. Remove obsolete settings.
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Label>: Adjust call to
+ create_label_decl.
+ * gcc-interface/trans.c (gnat_to_gnu) <N_Null): Likewise. Ignore the
+ label for debugging purposes.
+
+2012-01-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: For an aliased
+ object with an unconstrained nominal subtype and if optimization isn't
+ enabled, create a special VAR_DECL for debugging purposes.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.ads, sem_prag.adb: Minor reformatting.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Check for
+ language defined aspect applied to renaming or formal type
+ declaration (not permitted)
+
+2012-01-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Vet): Replaced
+ comment with pragma Assert.
+
+2012-01-23 Vincent Pucci <pucci@adacore.com>
+
+ * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Call
+ to Make_Aspect_For_PPC_In_Gen_Sub_Decl added in ASIS mode.
+ * sem_prag.adb, sem_prag.ads (Make_Aspect_For_PPC_In_Gen_Sub_Decl): New
+ routine. In ASIS mode, convert any PPC pragmas into aspects in generic
+ subprogram declaration in order to enable the analysis of PPC boolean
+ expressions.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb (Analyze_Object_Declaration): Properly
+ handle Current_Value for volatile variables (also propagate
+ Treat_As_Volatile from type to object).
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch12.adb (Install_Body): Detect the case
+ where the enclosing context is a package with a stub body that
+ has already been replaced by the actual body. In such cases,
+ the freeze node for the enclosing context must be inserted after
+ the real body.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma, case Debug): Freeze the called
+ subprogram before expanding the pragma into an if-statement with
+ a block, to ensure that when the subprogram is null its body is
+ properly generated before expansion.
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch12.adb (Analyze_Associations): Alphabetize local variables and
+ constants. Rename Actual_Types to Actuals_To_Freeze. Rename Next_Formal
+ to Saved_Formal.
+ Freeze all eligible subprograms which appear as actuals in
+ the instantiation.
+ (Has_Fully_Defined_Profile): New routine.
+ (Renames_Standard_Subprogram): New routine.
+ (Earlier): Add local variable N. Comment update. Do not use source
+ locations when trying to determine whether one node precedes another.
+
+2012-01-23 Gary Dismukes <dismukes@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): In the case
+ where the result of a concatentation can be null, set the to
+ result have both the low and high bounds of the right operand (not
+ just the high bound, as was the case prior to this fix). Also,
+ fix the saved high bound setting (Last_Opnd_High_Bound) in the
+ empty string literal case (should have been low bound minus one,
+ rather than plus one).
+
+2012-01-23 Thomas Quinot <quinot@adacore.com>
+
+ * scos.ads, put_scos.adb, get_scos.adb (Get_SCOs, Put_SCOs): Do not
+ omit statement SCOs for disabled pragmas.
+
+2012-01-23 Matthew Heaney <heaney@adacore.com>
+
+ * a-cohase.ads, a-cihase.ads, a-cbhase.ads, a-coorse.ads,
+ a-ciorse.ads, a-cborse.ads, a-cohama.ads, a-cihama.ads, a-cbhama.ads,
+ a-coorma.ads, a-ciorma.ads, a-cborma.ads, a-cdlili.ads, a-cidlli.ads,
+ a-cbdlli.ads, a-convec.ads, a-coinve.ads, a-cobove.ads (Cursor'Read,
+ Cursor'Write): Declare in private part.
+ (Reference_Type'Read, Reference_Type'Write): Ditto.
+ (Constant_Reference_Type'Read, Constant_Reference_Type'Write): Ditto.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * a-catizo.ads, a-calend.adb, a-calend.ads, par-ch13.adb: Minor
+ reformatting.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Subprogram_Declaration): Do not set the
+ Corresponding_Body on a defaulted null formal subprogram.
+ * sem_ch12.adb (Check_Formal_Package_Instance): No check needed
+ on a defaulted formal subprogram that is a null procedure.
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch9.adb: Update the comments involving pragma Implemented.
+ * sem_ch3.adb (Check_Pragma_Implemented (Entity_Id)): Add local
+ constant Subp_Alias and local variable Impl_Subp. Properly
+ handle aliases of synchronized wrappers. Code cleanup.
+ (Check_Pragma_Implemented (Entity_Id; Entity_Id)): Add
+ Name_Optional as part of the condition.
+ * sem_prag.adb (Analyze_Pragma): Add "Optional" as one of the
+ valid choices of implementation kind.
+ (Check_Arg_Is_One_Of): New routine.
+ * snames.ads-tmlp: Add Name_Optional.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * par-ch13.adb: Better error recovery in illegal aspect
+ specification.
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * a-calend.adb: Add with clause for Interfaces.C. Add constant
+ Unix_Max.
+ (Day_Of_Week): Call the internal UTC_Time_Offset.
+ (Split): Call the internal UTC_Time_Offset.
+ (Time_Of): Call the internal UTC_Time_Offset.
+ (Time_Zone_Operations.UTC_Time_Offset): Call internal UTC_Time_Offset.
+ (UTC_Time_Offset): New library-level routine.
+ * a-calend.ads (UTC_Time_Offset): Remove parameter
+ Is_Historic. Update related comment on usage.
+ * a-catizo.adb (UTC_Time_Offset): Removed.
+ (UTC_Time_Offset (Time)): Call Time_Zone_Operations.UTC_Time_Offset.
+ * a-caltizo.ads (UTC_Time_Offset): Removed.
+ (UTC_Time_Offset (Time)): Add back the default expression of parameter
+ Date.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sprint.ads, sprint.adb (Sprint_Node_List): Add New_Lines parameter
+ (pg,po,ps): Make sure each entry starts on new line.
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * a-calend.ads, a-calend.adb: Define types int and int_Pointer. Update
+ the parameter profile of procedure localtime_tzoff and its associated
+ comment.
+ (Day_Of_Week): Do not treat the input date as historical
+ with respect to time zones.
+ (Split): Do not treat the input
+ date as historical with respect to time zones. (Time_Of): Do
+ not treat the input constituents as forming a historical date
+ with respect to time zones.
+ (UTC_Time_Offset): Add new formal
+ parameter Is_Historic. Add local variable Flag. Update the call
+ to localtime_tzoff.
+ * a-catizo.ads, a-catizo.adb (UTC_Time_Offset): New routine.
+ (UTC_Time_Offset (Time)): Update the call to
+ Time_Zone_Operations.UTC_Time_Offset.
+ * sysdep.c (__gnat_localtime_tzoff): Update parameter
+ profile. Split the processing of offsets on Windows into two - one
+ part of historic time stamps and the other for the current time.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * a-calend.adb: Minor reformatting.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch9.adb, sem_ch9.adb: Handle array of access to synchronized
+ interface in requeue statement.
+
+2012-01-23 Cyrille Comar <comar@adacore.com>
+
+ * projects.texi: Remove references to main units and replace
+ with references to main programs to be coherent with the
+ documentation.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * s-utf_32.adb: Minor reformatting.
+
+2012-01-23 Vincent Celier <celier@adacore.com>
+
+ * snames.ads-tmpl: Minor comment addition Indicate that
+ Name_Library_Encapsulated_Options is only used in gprbuild.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch10.adb (Analyze_Subunit): Properly save/restore cunit
+ restrictions.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * snames.ads-tmpl: Add Name_Synchronization.
+ * aspects.ads, aspects.adb: Add Aspect_Synchronization to
+ enumeration type and related maps.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Aspect
+ Synchronization, build corresponding pragma Implemented.
+ * sem_util.adb (Implementation_Kind): Handle both explicit and
+ implicit pragma_argument association to retrieve the given
+ synchronization mode.
+
+2012-01-23 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch10.adb, errout.adb: Minor reformatting.
+
+2012-01-23 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_res.adb (Resolve_Actuals): An actual in a call to an
+ Ada 2012 Reference function does not lead to a dangerous order
+ dependence.
+
+2012-01-23 Gary Dismukes <dismukes@adacore.com>
+
+ * exp_util.adb (Is_Iterated_Container): Test
+ Is_Entity_Name when searching for calls to the default iterator,
+ to avoid blowing up on indirect calls which have an explicit
+ dereference as the call name.
+
+2012-01-23 Thomas Quinot <quinot@adacore.com>
+
+ * errout.adb (Set_Msg_Node): For an N_Expanded_Name, output
+ the complete expanded name, rather than just its Selector_Name.
+
+2012-01-23 Thomas Quinot <quinot@adacore.com>
+
+ * a-textio.adb (Put): Rewrite one-parameter Character version to
+ just call the two-parameter one with Current_Out.
+
+2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * freeze.adb (Check_Current_Instance): Issue an
+ error when the prefix of 'Unchecked_Access or 'Access does not
+ denote a legal aliased view of a type.
+ (Freeze_Record_Type): Do not halt the processing of record components
+ once the Has_Controlled_Component is set as this bypasses the remaining
+ checks.
+ (Is_Aliased_View_Of_Type): New routine.
+
+2012-01-23 Thomas Quinot <quinot@adacore.com>
+
+ * errout.ads, freeze.adb: Minor reformatting.
+
+2012-01-23 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch10.adb, sem_prag.adb: Remove redundant apostrophes in error
+ messages.
+
+2012-01-23 Olivier Hainque <hainque@adacore.com>
+
+ * adadecode.c (__gnat_decode): Deal with empty input early,
+ preventing potential erroneous memory access later on.
+
+2012-01-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/46192
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: In the case of a
+ renaming, preserve the volatileness through the indirection, if any.
+
+2012-01-14 Andreas Schwab <schwab@linux-m68k.org>
+
+ * gcc-interface/Makefile.in (OSCONS_EXTRACT): Add
+ $(GNATLIBCFLAGS).
+
+2012-01-10 Pascal Obry <obry@adacore.com>
+
+ * prj-nmsc.adb (Check_Library_Attributes):
+ Kill check for object/source directories for aggregate libraries.
+
+2012-01-10 Matthew Heaney <heaney@adacore.com>
+
+ * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
+ a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
+ a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-cimutr.adb,
+ a-cimutr.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads,
+ a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb,
+ a-cborse.ads, a-comutr.adb, a-comutr.ads, a-ciorma.adb, a-cobove.adb,
+ a-ciorma.ads, a-cobove.ads, a-convec.adb, a-convec.ads, a-cohase.adb,
+ a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbmutr.adb, a-cbmutr.ads,
+ a-cbhase.adb, a-cbhase.ads (Reference, Constant_Reference): Declare
+ container parameter as aliased in/in out.
+ Code clean ups.
+
+2012-01-10 Bob Duff <duff@adacore.com>
+
+ * s-os_lib.ads: Improve comment.
+
+2012-01-10 Geert Bosch <bosch@adacore.com>
+
+ * s-gearop.adb (Forward_Eliminate): Avoid improper aliasing
+ for complex Scalar.
+
+2012-01-10 Bob Duff <duff@adacore.com>
+
+ * sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when
+ checking that the 'Size is correct. If the type is "mod 2**12",
+ for example, it's illegal, but Esize is the 'Object_Size, which
+ will be something like 16 or 32, so the error ('Size = 12) was
+ not detected.
+ * gnat_rm.texi: Improve documentation of shift
+ and rotate intrinsics.
+
+2012-01-10 Pascal Obry <obry@adacore.com>
+
+ * prj.adb (For_Every_Project_Imported): Fix
+ implementation to make sure we return each project only once
+ for aggragte libraries. It is fine to return a project twice for
+ aggregate projects, this was the case as a Project_Id is different
+ in each project tree. The new implementation use a table based on
+ the project name to ensure proper detection of duplicate project
+ in aggregate library. A new context is then created to continue
+ retrurning duplicate project for aggregate libraries.
+
+2012-01-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (call_to_gnu): Create the temporary for the
+ return value in the variable-sized return type case if the target is
+ an array with fixed size. However, do not create it if this is the
+ expression of an object declaration.
+
+2012-01-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.
+
+2012-01-06 Robert Dewar <dewar@adacore.com>
+
+ * a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads,
+ s-utf_32.ads: Add pragma Pure
+ * s-utf_32.adb: Suppress warnings on non-static constants (now
+ that this is Pure).
+
+2012-01-06 Bob Duff <duff@adacore.com>
+
+ * s-rpc.ads (Read, Write): Add overriding indicators.
+
+2012-01-06 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Add documentation for conventions
+ Ada_Pass_By_Copy and Ada_Pass_By_Reference.
+
+2012-01-06 Gary Dismukes <dismukes@adacore.com>
+
+ * a-tienio.adb (Put): Add exception message on
+ raise statements. Remove unneeded blocks and object declarations.
+
+2012-01-06 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb: Minor reformatting.
+
+2012-01-06 Ed Schonberg <schonberg@adacore.com>
+
+ * sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate
+ that a selected component within a generic unit has been resolved
+ as a prefixed call with local references.
+ * sem_ch3.adb (Is_Visible_Component): In an instance body a selected
+ component is always visible.
+ * sem_ch4.adb (Analyze_Selected_Component): If the node is a
+ prefixed call in an instance, do not look for visible components
+ of the type.
+ * sem_ch12.adb (Reset_Entity): If a selected component has resolved
+ to a prefixed call, mark the node accordingly when prefix and
+ selector are local references.
+
+2012-01-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnatvsn.ads (Current_Year): Bump to 2012.
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.