OSDN Git Service

* common.opt (flag_stack_check): New Variable entry.
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
index ffaef4e..c747696 100644 (file)
@@ -1,3 +1,997 @@
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * gcc-interface/misc.c (flag_compare_debug, flag_stack_check):
+       Undefine as macros then define as variables.
+       (gnat_post_options): Set variables from global_options.
+
+2010-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR ada/46574
+       * gcc-interface/utils2.c (compare_elmt_bitpos): Fix typos.
+
+2010-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR ada/40777
+       * gcc-interface/targtyps.c (get_target_double_scalar_alignment): Guard
+       use of TARGET_64BIT macro.
+
+2010-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * s-osinte-linux.ads (sigset_t): Use unsigned_char subtype directly.
+       (unsigned_long_long_t): New modular type.
+       (pthread_cond_t): Add alignment clause.
+
+2010-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gnatvsn.adb (Version_String): Change type to C-like array of chars.
+       (Gnat_Version_String): Adjust to above change.
+
+2010-11-18  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Also
+       use return-by-invisible-reference if the return type is By_Reference.
+       Tidy up and skip the processing of the return type if it is void.
+
+2010-11-17  Joseph Myers  <joseph@codesourcery.com>
+
+       * gcc-interface/misc.c (gnat_parse_file): Take no arguments.
+
+2010-11-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/trans.c (addressable_p): Rewrite obsolete paragraph in
+       head comment.
+
+2010-11-12  Joseph Myers  <joseph@codesourcery.com>
+
+       * gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTS_H).
+       * gcc-interface/misc.c (gnat_handle_option): Take location_t parameter.
+
+2010-11-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/trans.c (gigi): Don't set 'pure' flag on SJLJ routines.
+       * gcc-interface/utils2.c (compare_arrays): Add LOC parameter.  Set it
+       directly on all the comparison expressions.
+       (build_binary_op): Pass input_location to compare_arrays.
+
+2010-11-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/trans.c (lvalue_required_p) <N_Type_Conversion>): Look
+       through it for elementary types as well.
+       <N_Unchecked_Type_Conversion>: Adjust to above change.
+       <N_Allocator>: Likewise.
+       (gnat_to_gnu): Do not attempt to rewrite boolean literals.
+
+2010-11-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set DECL_ARTIFICIAL
+       on the reused DECL node coming from a renamed object.
+       Set DECL_IGNORED_P on the DECL node built for renaming entities if they
+       don't need debug info.
+
+2010-11-09  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/utils.c (save_gnu_tree): Improve comments.
+       (get_gnu_tree): Likewise.
+
+2010-11-09  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (finish_fat_pointer_type): New function.
+       (gnat_to_gnu_entity) <E_Array_Type>: Use it to build the fat pointer
+       type.
+       <E_Access_Type>: Likewise.
+
+2010-11-02  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/gigi.h (add_stmt_force): Declare.
+       (add_stmt_with_node_force): Likewise.
+       * gcc-interface/trans.c (Attribute_to_gnu): Don't set TREE_SIDE_EFFECTS
+       on the SAVE_EXPR built for cached expressions of parameter attributes.
+       (Subprogram_Body_to_gnu): Force evaluation of the SAVE_EXPR built for
+       cached expressions of parameter attributes.
+       (add_stmt_force): New function.
+       (add_stmt_with_node_force): Likewise.
+
+2010-10-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/trans.c (gigi): Fix formatting issues.
+       (build_raise_check): Likewise.
+       (gnat_to_gnu): Likewise.
+       * gcc-interface/utils2.c (build_call_raise_range): Likewise.
+       (build_call_raise_column): Likewise.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * exp_ch5.adb, exp_prag.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
+       sem_dist.adb, exp_ch7.adb, exp_util.adb, exp_attr.adb, exp_ch9.adb,
+       sem_ch10.adb, checks.adb, sem_prag.adb, par-endh.adb, sem_ch12.adb,
+       exp_smem.adb, sem_attr.adb, exp_ch4.adb, exp_ch6.adb, exp_ch8.adb,
+       sem_ch6.adb, exp_disp.adb, exp_aggr.adb, exp_dist.adb, sem_ch13.adb,
+       par-ch3.adb, par-ch5.adb, exp_strm.adb, exp_ch3.adb: Minor reformatting
+       * opt.ads: Minor comment fix.
+
+2010-10-26  Vincent Celier  <celier@adacore.com>
+
+       * gnat_ugn.texi: Document option -s for gnatlink.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * opt.ads: Move documentation on checksum stuff here from prj-nmsc
+       * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Move
+       documentation on checksum versions to opt.ads.
+
+2010-10-26  Vincent Celier  <celier@adacore.com>
+
+       * opt.ads (Checksum_Accumulate_Token_Checksum): New Boolean flag,
+       defaulted to True.
+       (Checksum_GNAT_6_3): New name of Old_Checksums
+       (Checksum_GNAT_5_03): New name of Old_Old_Checksums
+       * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Adapt to new
+       names of Opt flags.
+       Set Checksum_Accumulate_Token_Checksum to False if GNAT version is 5.03
+       or before.
+       * scng.adb (Accumulate_Token_Checksum_GNAT_6_3): New name of procedure
+       Accumulate_Token_Checksum_Old.
+       (Accumulate_Token_Checksum_GNAT_5_03): New name of procedure
+       Accumulate_Token_Checksum_Old_Old.
+       (Nlit): Call Accumulate_Token_Checksum only if
+       Opt.Checksum_Accumulate_Token_Checksum is True.
+       (Scan): Ditto
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch13.adb (Build_Invariant_Procedure): New calling sequence.
+       (Build_Invariant_Procedure): Properly handle analysis of invariant
+       expression with proper end-of-visible-decls visibility.
+       * sem_ch13.ads (Build_Invariant_Procedure): Changed calling sequence.
+       * sem_ch3.adb (Process_Full_View): Don't build invariant procedure
+       (too late).
+       (Analyze_Private_Extension_Declaration): Propagate invariant flags.
+       * sem_ch7.adb (Analyze_Package_Specification): Build invariant
+       procedures.
+
+2010-10-26  Vincent Celier  <celier@adacore.com>
+
+       * opt.ads (Old_Checksums, Old_Old_Checksums): New Boolean flags,
+       defaulted to False.
+       * prj-nmsc.adb (Process_Project_Level_Array_Attributes): When
+       processing attribute Toolchain_Version ("Ada"), set Opt.Old_Checksums
+       and Opt.Old_Old_Checksums depending on the GNAT version.
+       * scng.adb (Accumulate_Token_Checksum_Old): New procedure.
+       (Accumulate_Token_Checksum_Old_Old): New procedure.
+       (Scan): For keywords, when Opt.Old_Checksums is True, call one of the
+       alternative procedures Accumulate_Token_Checksum_Old or
+       Accumulate_Token_Checksum_Old_Old, instead of Accumulate_Token_Checksum.
+
+2010-10-26  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * gcc-interface/utils2.c (build_compound_expr): New function.
+       * gcc-interface/gigi.h (build_compound_expr): Declare it.
+       * gcc-interface/trans.c (Attribute_to_gnu, call_to_gnu): Use it.
+       (gnat_to_gnu, case N_Expression_With_Actions): Likewise. 
+
+2010-10-26  Javier Miranda  <miranda@adacore.com>
+
+       * sem_prag.adb (Process_Import_Or_Interface): Skip primitives of
+       interface types when processing all the entities in the homonym chain
+       that are declared in the same declarative part.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch3.adb (Process_Range_In_Decl): If the range is part of a
+       quantified expression, the insertion point for range checks will be
+       arbitrarily far in the tree.
+       * sem_ch5.adb (One_Bound): Use Insert_Actions for the declaration of
+       the temporary that holds the value of the bounds.
+       * sem_res.adb (Resolve_Quantified_Expressions): Disable expansion of
+       condition until the full expression is expanded.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * opt.ads: Comment fix.
+       * sem_cat.adb: Treat categorization errors as warnings in GNAT Mode.
+       * switch-c.adb: GNAT Mode does not set
+       Treat_Categorization_Errors_As_Warnings.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve warning when an
+       operator renames another one with a different name.
+
+2010-10-26  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_ch4.adb, exp_pakd.adb: Minor reformatting.
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * namet.adb: Improve hash function.
+
+2010-10-26  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_disp.adb: Minor reformatting.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch3.adb, sem_ch4.adb, sem_disp.adb, switch-c.adb: Minor
+       reformatting.
+       * gnat_ugn.texi: Document -gnateP switch.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * opt.ads (Treat_Categorization_Errors_As_Warnings): New flag
+       * sem_cat.adb (Check_Categorization_Dependencies):
+       Use Check_Categorization_Dependencies
+       * switch-c.adb: GNAT Mode sets Treat_Categorization_Errors_As_Warnings
+       -gnateP sets Treat_Categorization_Errors_As_Warnings
+       * usage.adb: Add line for -gnateP switch
+
+2010-10-26  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch3.adb (Add_Internal_Interface_Entities): Handle primitives
+       inherited from the parent that cover interface primitives.
+       (Derive_Progenitor_Subprograms): Handle primitives inherited from
+       the parent that cover interface primitives.
+       * sem_disp.adb (Find_Primitive_Covering_Interface): When searching in
+       the list of primitives of the type extend the test to include inherited
+       private primitives.
+       * sem_ch6.ads (Is_Interface_Conformant): Add missing documentation.
+       * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Add missing
+       barrier to the loop searching for explicit overriding primitives.
+       * sem_ch4.adb (Analyze_Indexed_Component_Form): Add missing barrier
+       before accessing attribute Entity.
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * make.adb: Call Namet.Finalize, so we can get statistics.
+
+2010-10-26  Geert Bosch  <bosch@adacore.com>
+
+       * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the subprogram_body
+       node to determine wether the subprogram is a rewritten parameterized
+       expression.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * opt.ads: Minor code reorganization.  Alphabetize Warning switches.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_res.adb, xsinfo.adb: Minor reformatting.
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * namet.adb (Finalize): More cleanup of statistics printouts.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * ceinfo.adb: Minor reformatting.
+
+2010-10-26  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch6.adb (Check_Overriding_Indicator, New_Overloaded_Entity): When
+       setting attribute Overridden_Operation do not reference the entities
+       generated by Derive_Subprograms but their aliased entity (which
+       is the primitive inherited from the parent type).
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * namet.adb, namet.ads: Minor cleanup.
+
+2010-10-26  Arnaud Charlet  <charlet@adacore.com>
+
+       * gcc-interface/Make-lang.in: Update dependencies.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * einfo.ads, einfo.adb (Is_Base_Type): New function, use it where
+       appropriate.
+       * exp_ch6.adb, exp_dbug.adb, exp_disp.adb, freeze.adb, lib-xref.adb,
+       sem_aux.adb, sem_ch3.adb, sem_ch7.adb, sem_ch8.adb (Is_Base_Type): Use
+       this new abstraction where appropriate.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch12.adb: Code clean up.
+
+2010-10-26  Paul Hilfinger  <hilfinger@adacore.com>
+
+       * exp_dbug.ads: Document effect of 'pragma Unchecked_Union' on
+       debugging data.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_util.adb (Note_Possible_Modification): If the target of an
+       assignment is the bound variable in an iterator, the domain of
+       iteration, i.e. array or container, is modified as well.
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * Make-generated.in: Make the relevant make targets depend on
+       ceinfo.adb and csinfo.adb.
+       * csinfo.adb, ceinfo.adb: Make sure it raises an exception on failure,
+       so when called from xeinfo, the failure will be noticed.
+       * sinfo.ads: Update comments to reflect the fact that xsinfo runs csinfo
+       * xsinfo.adb, xeinfo.adb: Run ceinfo to check for errors. Close files.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_ch4.adb: Set properly parent field of operands of concatenation.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_res.adb (Check_Infinite_Recursion): A recursive call within a
+       conditional expression or a case expression should not generate an
+       infinite recursion warning.
+
+2010-10-26  Javier Miranda  <miranda@adacore.com>
+
+       * einfo.ads, einfo.adb (Is_Overriding_Operation): Removed.
+       (Set_Is_Overriding_Operation): Removed.
+       * sem_ch3.adb (Check_Abstract_Overriding): Remove redundant call to
+       Is_Overriding_Operation.
+       * exp_ch7.adb (Check_Visibly_Controlled): Remove redundant call to
+       Is_Overriding_Operation.
+       * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Remove redundant
+       call to Set_Is_Overriding_Operation.
+       * sem_util.adb (Collect_Primitive_Operations): Replace test on
+       Is_Overriding_Operation by test on the presence of attribute
+       Overridden_Operation.
+       (Original_Corresponding_Operation): Remove redundant call to attribute
+       Is_Overriding_Operation.
+       * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Remove
+       redundant call to Is_Overriding_Operation.
+       (Verify_Overriding_Indicator): Replace several occurrences of test on
+       Is_Overriding_Operation by test on the presence of attribute
+       Overridden_Operation.
+       (Check_Convention): Replace test on Is_Overriding_Operation by test on
+       the presence of Overridden_Operation.
+       (Check_Overriding_Indicator): Add missing decoration of attribute
+       Overridden_Operation. Minor code cleanup.
+       (New_Overloaded_Entity): Replace occurrence of test on
+       Is_Overriding_Operation by test on the presence of attribute
+       Overridden_Operation. Remove redundant setting of attribute
+       Is_Overriding_Operation plus minor code reorganization.
+       Add missing decoration of attribute Overridden_Operation.
+       * sem_elim.adb (Set_Eliminated): Replace test on
+       Is_Overriding_Operation by test on the presence of Overridden_Operation.
+       * sem_ch8.adb (Analyze_Subprogram_Renaming): Replace test on
+       Is_Overriding_Operation by test on the presence of
+       Overridden_Operation. Remove a redundant test on attribute
+       Is_Overriding_Operation. 
+       * lib-xref.adb (Generate_Reference): Replace test on
+       Is_Overriding_Operation by test on the presence of Overridden_Operation.
+       (Output_References): Replace test on Is_Overriding_Operation by test on
+       the presence of Overridden_Operation.
+       * sem_disp.adb (Override_Dispatching_Operation): Replace test on
+       Is_Overriding_Operation by test on the presence of Overridden_Operation.
+       Add missing decoration of attribute Overridden_Operation.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Properly check
+       RM 13.4.1(10).
+
+2010-10-26  Bob Duff  <duff@adacore.com>
+
+       * sem_res.adb (Resolve_Actuals): In case of certain
+       internally-generated type conversions (created by OK_Convert_To, so the
+       Conversion_OK flag is set), avoid fetching the component type when it's
+       not really an array type, but a private type completed by an array type.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb: Adjust format of error message.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * einfo.ads, einfo.adb (OK_To_Reference): Removed, no longer used.
+       * exp_util.adb (Side_Effect_Free): Put in safety barrier in code to
+       detect renamings to avoid problems with invariants.
+       * sem_ch13.adb (Replace_Type_References_Generic): New procedure
+       (Build_Invariant_Procedure): Use Replace_Type_Reference_Generic
+       (Build_Predicate_Function): Use Replace_Type_Reference_Generic
+       * sem_res.adb, sem_ch8.adb, sem_ch4.adb (OK_To_Reference): Remove
+       references, flag is no longer set.
+
+2010-10-26  Vincent Celier  <celier@adacore.com>
+
+       * prj.ads (Source_Data): New Boolean component Initialized, defaulted
+       to False, set to True when Source_Data is completely initialized.
+       * prj-env.adb: Minor comment fix.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_case.adb, sem_ch6.adb, sem_util.adb: Minor reformatting.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb (Analyze_Iteration_Scheme): Diagnose attempt to use thew
+       form "for X in A" when A is an array object. This form is only intended
+       for containers.
+       * sem_eval.adb: Fix reference to non-existing field of type conversion
+       node.
+       * sem_case.adb (Check_Choices): Improve error reporting for overlapping
+       choices in case statements.
+
+2010-10-26  Gary Dismukes  <dismukes@adacore.com>
+
+       * exp_disp.adb (Expand_Interface_Actuals): When expanding an actual for
+       a class-wide interface formal that involves applying a displacement
+       conversion to the actual, check for the case of calling a build-in-place
+       function and handle generation of the implicit BIP parameters (call
+       Make_Build_In_Place_Call_In_Anonymous_Context).
+       Add with and use of Exp_Ch6.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * sem_prag.adb, sem_cat.ads: Minor reformatting.
+
+2010-10-26  Sergey Rybin  <rybin@adacore.com>
+
+       * vms_data.ads: Define VMS qualifier for gnatelim '--ignore' option
+
+2010-10-26  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_util.adb (Has_Preelaborable_Initialization.Check_Components):
+       For a discriminant, use Discriminant_Default_Value rather than
+       Expression (Declaration_Node (D)).
+
+2010-10-26  Geert Bosch  <bosch@adacore.com>
+
+       * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Parameterized
+       expressions don't need a spec, even when style checks require
+       subprograms to have one.
+
+2010-10-26  Arnaud Charlet  <charlet@adacore.com>
+
+       * gnatvsn.ads: Update comments.
+
+2010-10-26  Matthew Heaney  <heaney@adacore.com>
+
+       * Makefile.rtl, impunit.adb: Add bounded hashed set and bounded hashed
+       map containers.
+       * a-cohata.ads: Add declaration of generic package for bounded hash
+       table types.
+       * a-chtgbo.ads, a-chtgbo.adb, a-chtgbk.ads, a-chtgbk.adb, a-cbhase.ads,
+       a-cbhase.adb, a-cbhama.ads, a-cbhama.adb: New files.
+
+2010-10-26  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_warn.adb: Improve warning message on overlapping actuals.
+
+2010-10-26  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_ch4.adb, exp_dist.adb: Minor reformatting.
+
+2010-10-26  Vincent Celier  <celier@adacore.com>
+
+       * makeusg.adb (Makeusg): Add lines for switches -vl, -vm and -vh.
+
+2010-10-26  Robert Dewar  <dewar@adacore.com>
+
+       * exp_ch3.adb (Expand_N_Object_Declaration): Move generation of
+       predicate check to analyzer, since too much rewriting occurs in the
+       analyzer.
+       * sem_ch13.adb (Build_Predicate_Function): Change calling sequence, and
+       change the order in which things are done to fix several errors in
+       dealing with qualification of the type name.
+       (Build_Static_Predicate): Built static predicate after full analysis
+       of the body. This is necessary to fix several problems.
+       * sem_ch3.adb (Analyze_Object_Declaration): Move predicate check here
+       from expander, since too much expansion occurs in the analyzer to leave
+       it that late.
+       (Analyze_Object_Declaration): Change parameter Include_Null to new name
+       Include_Implicit in Is_Partially_Initialized_Type call.
+       (Analyze_Subtype_Declaration): Make sure predicates are proapagated in
+       some strange cases of internal subtype generation.
+       * sem_util.ads, sem_util.adb (Is_Partially_Initialized_Type): Change
+       Include_Null to Include_Implicit, now includes the case of
+       discriminants.
+
+2010-10-26  Sergey Rybin  <rybin@adacore.com>
+
+       * gnat_rm.texi: Revise the documentation for pragma Eliminate. 
+
+2010-10-26  Matthew Heaney  <heaney@adacore.com>
+
+       * Makefile.rtl, impunit.adb: Added bounded list container.
+       * a-cbdlli.ads, a-cbdlli.adb: New file.
+
+2010-10-25  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/utils2.c: Include flags.h and remove prototypes.
+       (build_unary_op) <TRUTH_NOT_EXPR>: When not optimizing, fold the result
+       of the call to invert_truthvalue_loc.
+       * gcc-interface/Make-lang.in (utils2.o): Add $(FLAGS_H).
+
+2010-10-25  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/utils.c (update_pointer_to): Clear TYPE_POINTER_TO and
+       TYPE_REFERENCE_TO of the old type after redirecting its pointer and
+       reference types.
+
+2010-10-25  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not set
+       TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
+
+2010-10-25  Jose Ruiz  <ruiz@adacore.com>
+
+       * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for powerpc-linux):
+       Reorganize target pairs so that it works on linux and ElinOS.
+
+2010-10-25  Pascal Obry  <obry@adacore.com>
+       
+       * adaint.c (__gnat_file_time_name_attr): Use GetFileAttributesEx to get
+       the timestamp. A bit faster than opening/closing the file.
+       (__gnat_stat_to_attr): Remove kludge for Windows.
+       (__gnat_file_exists_attr): Likewise.
+       The timestamp is now retreived using GetFileAttributesEx as faster.
+
+2010-10-25  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch3.adb (Derive_Interface_Subprogram): New subprogram.
+       (Derive_Subprograms): For abstract private types transfer to the full
+       view entities of uncovered interface primitives. Required because if
+       the interface primitives are left in the private part of the package
+       they will be decorated as hidden when the analysis of the enclosing
+       package completes (and hence the interface primitive is not visible
+       for dispatching calls).
+
+2010-10-25  Matthew Heaney  <heaney@adacore.com>
+
+       * Makefile.rtl, impunit.adb: Added bounded set and bounded map
+       containers.
+       * a-crbltr.ads: Added declaration of generic package for bounded tree
+       types.
+       * a-rbtgbo.ads, a-rbtgbo.adb, a-rbtgbk.ads, a-rbtgbk.adb, a-btgbso.ads,
+       a-btgbso.adb, a-cborse.ads, a-cborse.adb, a-cborma.ads, a-cborma.adb:
+       New.
+
+2010-10-25  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_util.adb: Minor reformatting.
+       * usage.adb: Fix usage line for -gnatwh.
+
+2010-10-25  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_ch12.adb (Analyze_Package_Instantiation): For an
+       instantiation in an RCI spec, omit package body if instantiation comes
+       from source, even as a nested
+       package.
+       * exp_dist.adb (Add_Calling_Stubs_To_Declarations,
+       *_Support.Add_Receiving_Stubs_To_Declarations): Handle the case of
+       nested packages, package instantiations and subprogram instantiations.
+
+2010-10-25  Robert Dewar  <dewar@adacore.com>
+
+       * exp_ch5.adb (Expand_Predicated_Loop): Remove code for loop through
+       non-static predicate, since we agree not to allow this.
+       (Expand_Predicated_Loop): Properlay handle false predicate (null
+       list in Static_Predicate field.
+       * sem_ch13.adb (Build_Static_Predicate): Extensive changes to clean up
+       handling of more general predicate forms.
+
+2010-10-25  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch4.adb, sem_util.adb: Minor reformatting.
+       * sem_ch8.adb (Find_Selected_Component): Allow selection from instance
+       of type in predicate or invariant expression.
+
+2010-10-25  Pascal Obry  <obry@adacore.com>
+
+       * adaint.c (__gnat_stat_to_attr): Can set the timestamp on Windows now.
+       (f2t): New routine.
+       (__gnat_stat): Rewrite Win32 version.
+
+2010-10-25  Robert Dewar  <dewar@adacore.com>
+
+       * sem_warn.adb, einfo.ads, exp_ch4.adb: Minor comment fix
+       * sem_case.adb: Comment clarification for loops through false
+       predicates.
+       * sem_util.adb: Minor reformatting
+       (Check_Order_Dependence): Fix bad double blank in error message
+
+2010-10-25  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch4.adb (Analyze_Membership_Op): in Ada_2012 a membership
+       operation can have a single alternative that is a value of the type.
+       Rewrite operation as an equality test.
+
+2010-10-25  Matthew Heaney  <heaney@adacore.com>
+
+       * Makefile.rtl, impunit.adb: Added a-cobove (bounded vector container)
+       to lists.
+       * a-contai.ads: Added declaration of Capacity_Error exception.
+       * a-cobove.ads, a-cobove.adb: New files.
+
+2010-10-25  Thomas Quinot  <quinot@adacore.com>
+
+       * uname.adb: Revert previous change, no longer needed after change
+       in par-ch10.adb.
+
+2010-10-25  Thomas Quinot  <quinot@adacore.com>
+
+       * scos.ads: Minor comment fix.
+
+2010-10-25  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb (Analyze_Assignment_Statement): Check dangerous order
+       dependence.
+       * sem_ch6.adb (Analyze_Procedure_Call_Statement): Ditto.
+       * sem_res.adb (Analyze_Actuals): Add actual to list of actuals for
+       current construct, for subsequent order dependence checking.
+       (Resolve): Check order dependence on expressions that are not
+       subexpressions.
+       * sem_util.adb (Check_Order_Dependence): Code cleanup, to correspond
+       to latest version of AI05-144-2.
+       * sem_warn.adb (Warn_On_Overlapping_Actuals): Code cleanup.
+
+2010-10-25  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch13.adb (Build_Static_Predicate): Moved out of
+       Build_Predicate_Function.
+       (Build_Static_Predicate): Complet rewrite for more general predicates
+
+2010-10-25  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+            Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity, case E_Function): Allow
+       In Out/Out parameters for functions.
+       * gcc-interface/trans.c (gnu_return_var_stack): New variable.
+       (create_init_temporary): New static function.
+       (Subprogram_Body_to_gnu): Handle In Out/Out parameters for functions.
+       (call_to_gnu): Likewise.  Use create_init_temporary in order to create
+       temporaries for unaligned parameters and return value.  If there is an
+       unaligned In Out or Out parameter passed by reference, push a binding
+       level if not already done.  If a binding level has been pushed and the
+       call is returning a value, create the call statement.
+       (gnat_to_gnu) <N_Return_Statement>: Handle In Out/Out parameters for
+       functions.
+
+2010-10-22  Ben Brosgol  <brosgol@adacore.com>
+
+       * gnat_rm.texi: Add chapter on Ada 2012 support.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch12.adb: Minor reformatting.
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_dist.adb: Mark missing case of nested package when expanding
+       stubs.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * par-ch10.adb: Discard incomplete with_clause.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * checks.adb (Enable_Range_Check): Remove code suppressing range check
+       if static predicate present, not needed.
+       * exp_attr.adb (Expand_Pred_Succ): Check Suppress_Assignment_Checks flag
+       * exp_ch3.adb (Expand_N_Object_Declaration): Check
+       Suppress_Assignment_Checks flag.
+       * exp_ch4.adb (Expand_N_In): Make some corrections for proper handling
+       of ranges when predicates are present.
+       * exp_ch5.adb (Expand_Predicated_Loop): New procedure
+       (Expand_N_Assignment_Statement): Check Suppress_Assignment_Checks flag
+       (Expand_N_Loop_Statement): Handle loops over predicated types
+       * sem_case.adb (Analyze_Choices): Remove extra blank in error message.
+       * sem_ch13.adb (Build_Predicate_Function.Add_Call): Suppress info
+       message for inheritance if within a generic instance, not useful there!
+       (Build_Static_Predicate): Optimize test in predicate function
+       based on static ranges determined.
+       * sem_ch5.adb (Analyze_Iteration_Scheme): Error for loop through
+       subtype with non-static predicate.
+       * sinfo.ads, sinfo.adb (Suppress_Assignment_Checks): New flag.
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * uname.adb (Get_Unit_Name.Add_Node_Name): If encountering an error
+       node in the unit name, propagate Program_Error to guard against
+       cascaded errors.
+
+2010-10-22  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch8.adb (Find_Selected_Component): Do not generate a subtype for
+       selected components of dispatch table wrappers.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_ch9.adb (Make_Initialize_Protection): A protected type that
+       implements an interface must be treated as if it has entries, to
+       support dispatching select statements.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_aggr.adb, sem_ch3.adb: Minor reformatting.
+
+2010-10-22  Javier Miranda  <miranda@adacore.com>
+
+       * sem_aggr.adb (Resolve_Array_Aggregate.Add): If the type of the
+       aggregate has a non standard representation the attributes 'Val and
+       'Pos expand into function calls and the resulting expression is
+       considered non-safe for reevaluation by the backend. Relocate it into
+       a constant temporary to indicate to the backend that it is side
+       effects free.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch3.adb (Build_Concurrent_Derived_Type): Create declaration for
+       derived corresponding record type only when expansion is enabled.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_case.adb, sem_attr.adb (Bad_Predicated_Subtype_Use): Change order
+       of parameters.
+       * sem_ch13.adb (Build_Predicate_Function): Don't give inheritance
+       messages for generic actual subtypes.
+       * sem_ch9.adb, sem_res.adb, sem_util.adb, sem_util.ads, sem_ch3.adb
+       (Bad_Predicated_Subtype_Use): Use this procedure.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch5.adb: Minor reformatting.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * a-except-2005.adb (Rmsg_18): New message text.
+       * a-except.adb (Rmsg_18): New message text.
+       * atree.adb (List25): New function
+       (Set_List25): New procedure
+       * atree.ads (List25): New function
+       (Set_List25): New procedure
+       * einfo.adb (Static_Predicate): Is now a list
+       (OK_To_Reference): Present in all entities
+       * einfo.ads (Static_Predicate): Is now a list
+       (OK_To_Reference): Applies to all entities
+       * exp_ch13.adb (Build_Predicate_Function): Moved to Sem_Ch13
+       * sem_attr.adb (Bad_Attribute_For_Predicate): Call
+       Bad_Predicated_Subtype_Use.
+       * sem_case.ads, sem_case.adb: Major surgery to deal with predicated
+       subtype case.
+       * sem_ch13.adb (Build_Predicate_Function): Moved from Exp_Ch13 to
+       Sem_Ch13.
+       (Build_Static_Predicate): New procedure handles static predicates.
+       * sem_ch3.adb (Analyze_Subtype_Declaration): Delay freeze on subtype
+       with no constraint if ancestor subtype has predicates.
+       (Analyze_Variant_Part): New calling sequence for Analyze_Choices
+       * sem_ch4.adb (Junk_Operand): Don't complain about OK_To_Reference
+       entity.
+       (Analyze_Case_Expression): New calling sequence for Analyze_Choices
+       * sem_ch5.adb (Analyze_Case_Statement): New calling sequence for
+       Analyze_Choices.
+       * sem_util.ads, sem_util.adb (Bad_Predicated_Subtype_Use): New procedure
+       * types.ads (PE_Bad_Predicated_Generic_Type): Replaces
+       PE_Bad_Attribute_For_Predicate.
+       * atree.h: Add definition of List25.
+
+2010-10-22  Jerome Lambourg  <lambourg@adacore.com>
+
+       * gnatlink.adb (Process_Binder_File): Remove CLI-specific code, now
+       moved to dotnet-ld.
+       (Gnatlink): Remove CLI-specific code, moved to dotnet-ld
+       * bindgen.adb (Gen_Object_Files_Options): Do not issue -L switches with
+       the .NET compiler, useless and unsupported.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_util.ads (Get_Num_Lit_From_Pos): Fix errors in documentation,
+       this returns a Node_Id for a reference to the entity, not the entity
+       itself!
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb (Analyze_Iteration_Scheme): use Insert_Actions when
+       bounds require a temporary.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch4.adb: Minor reformatting.
+       * sinfo.ads: Minor comment fixes for Ada 2012 syntax.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * par-ch5.adb: Minor reformatting.
+       * gcc-interface/Make-lang.in: Update dependencies.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * a-except.adb, a-except-2005.adb: Add new Rcheck entry.
+       * exp_ch13.adb (Add_Call): Make sure subtype is marked with
+       Has_Predicates set to True if it inherits predicates.
+       * sem_attr.adb: Handle 'First/'Last/'Range for predicated types
+       * types.ads (PE_Bad_Attribute_For_Predicate): New reason code
+       * types.h: Add new Rcheck entry.
+       * einfo.ads, einfo.adb (Static_Predicate): New field.
+       Minor code reorganization (file float routines in proper section)
+       Fix bad field name in comments.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_eval.adb (Subtypes_Statically_Compatible): Check null exclusion
+       case.
+
+2010-10-22  Vincent Celier  <celier@adacore.com>
+
+       * prj-conf.adb (Get_Config_Switches): Detect if there is at least one
+       declaration of IDE'Compiler_Command for one of the language in the main
+       project.
+       (Do_Autoconf): If there were at least one Compiler_Command declared and
+       no target, invoke gprconfig with --target=all instead of the normalized
+       host name.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * par-ch4.adb: Update syntax in comments for Ada 2012.
+       * sinfo.ads: Update syntax in comments for Ada 2012
+       * par-ch3.adb (Check_Restricted_Expression): Remove "in Ada 2012 mode"
+       from msg.
+
+2010-10-22  Gary Dismukes  <dismukes@adacore.com>
+
+       * sem_ch3.adb (Check_Or_Process_Discriminants): In Ada 2012, allow
+       limited tagged types to have defaulted discriminants. Customize the
+       error message for the Ada 2012 case.
+       (Process_Discriminants): In Ada 2012, allow limited tagged types to have
+       defaulted discriminants. Customize the error message for the Ada 2012
+       case.
+       * sem_ch6.adb (Create_Extra_Formals): Suppress creation of the extra
+       formal for out formals of discriminated types in the case where the
+       underlying type is a limited tagged type.
+       * exp_attr.adb (Expand_N_Attribute_Reference, case
+       Attribute_Constrained): Return True for 'Constrained when the
+       underlying type of the prefix is a limited tagged type.
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_ch3.adb (Complete_Private_Subtype): The full view of the subtype
+       may already have a rep item chain inherited from the full view of the
+       base type, so do not overwrite it when propagating rep items from the
+       partial view of the subtype.
+       * sem_ch3.adb: Minor code reorganization.  Minor reformatting.
+
+2010-10-22  Sergey Rybin  <rybin@adacore.com>
+
+       * gnat_ugn.texi (gnatmetric): Remove description of debug option.
+
+2010-10-22  Tristan Gingold  <gingold@adacore.com>
+
+       * adaint.c (__gnat_number_of_cpus): Add implementation for VMS.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * par-ch5.adb: Set properly starting sloc of loop parameter.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_util.adb (May_Be_Lvalue): An actual in a function call can be an
+       lvalue in Ada2012, if the function has in-out parameters.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * cstand.adb, einfo.adb, exp_attr.adb, sem_prag.adb, sem_vfpt.adb,
+       sem_ch10.adb: Minor reformatting.
+
+2010-10-22  Sergey Rybin  <rybin@adacore.com>
+
+       * gnat_ugn.texi: Remove most of the content of gnatcheck chapter.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_attr.adb: Handle indexed P'old.
+
+2010-10-22  Geert Bosch  <bosch@adacore.com>
+
+       * cstand.adb (Build_Float_Type): Set Float_Rep according to platform.
+       * einfo.ads (Float_Rep): New attribute.
+       (Float_Rep_Kind): Move from body. Add comments.
+       * einfo.adb (Float_Rep_Kind): Move to spec
+       (Float_Rep): Now a real field instead of local function.
+       (Set_Float_Rep): New procedure to set floating point representation
+       (Set_Vax_Float): Remove.
+       (Write_Entity_Flags): Remove Vax_Float flag.
+       (Write_Field10_Name): Add E_Floating_Point_Type case for Float_Rep.
+       * exp_attr.adb (Attribute_Valid): Use case statement for representation
+       specific processing.
+       * sem_ch3.adb (Build_Derived_Numeric_Type,
+       Floating_Point_Type_Declaration): Set Float_Rep instead of Vax_Float
+       attribute.
+       * sem_util.ads, sem_util.adb (Is_AAMP_Float): Remove.
+       * sem_vfpt.adb (Set_D_Float, Set_F_Float, Set_G_Float, Set_IEEE_Long,
+       Set_IEEE_Short): Set Float_Rep instead of Vax_Float attribute.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sprint.adb: Minor reformatting.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * exp_ch3.adb (Expand_N_Object_Declaration): Do required predicate
+       checks.
+       * sem_ch3.adb (Complete_Private_Subtype): Propagate predicates to full
+       view.
+       * sem_ch6.adb (Invariants_Or_Predicates_Present): New name for
+       Invariants_Present.
+       (Process_PPCs): Handle predicates generating post conditions
+       * sem_util.adb (Is_Partially_Initialized_Type): Add
+       Include_Null parameter.
+       * sem_util.ads (Is_Partially_Initialized_Type): Add
+       Include_Null parameter.
+
+2010-10-22  Sergey Rybin  <rybin@adacore.com>
+
+       * gnat_ugn.texi (gnatelim): Add description for '--ignore' option
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * sem_prag.adb (Check_First_Subtype): Specialize error messages for
+       case where argument is not a type.
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * exp_ch5.adb, par-ch4.adb, par-ch5.adb, sem_ch5.adb, sinfo.ads: Minor
+       reformatting.
+
+2010-10-22  Arnaud Charlet  <charlet@adacore.com>
+
+       * a-locale.adb: Minor code clean up.
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_ch4.adb: Minor code reorganization and factoring.
+
+2010-10-22  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_ch5.adb, sem_ch5.adb, sinfo.ads, snames.ads-tmpl, par-ch5.adb:
+       Minor reformatting.
+
+2010-10-22  Geert Bosch  <bosch@adacore.com>
+
+       * stand.ads: Fix typo in comment.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch6.adb: Enable in-out parameter for functions.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch4.adb (Analyze_Quantified_Expression): Handle properly loop
+       iterators that are transformed into container iterators after analysis.
+       * exp_ch4.adb (Expand_N_Quantified_Expression): Handle properly both
+       iterator forms before rewriting as a loop.
+
+2010-10-22  Brett Porter  <porter@adacore.com>
+
+       * a-locale.adb, a-locale.ads, locales.c: New files.
+       * Makefile.rtl: Add a-locale
+       * gcc-interface/Makefile.in: Add locales.c
+
+2010-10-22  Robert Dewar  <dewar@adacore.com>
+
+       * sem_util.ads, sem_util.adb, sem_aux.ads, sem_aux.adb
+       (Is_Generic_Formal): Moved from Sem_Util to Sem_Aux.
+
+2010-10-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_ch5.adb (Expand_Iterator_Loop): New subprogram, implements new
+       iterator forms over arrays and containers, in loops and quantified
+       expressions.
+       * exp_util.adb (Insert_Actions): include N_Iterator_Specification.
+       * par-ch4.adb (P_Quantified_Expression): Handle iterator specifications.
+       * par-ch5.adb (P_Iterator_Specification): New subprogram. Modify
+       P_Iteration_Scheme to handle both loop forms.
+       * sem.adb: Handle N_Iterator_Specification.
+       * sem_ch5.adb, sem_ch5.ads (Analyze_Iterator_Specification): New
+       subprogram.
+       * sinfo.adb, sinfo.ads: New node N_Iterator_Specification.
+       N_Iteration_Scheme can now include an Iterator_Specification. Ditto
+       for N_Quantified_Expression.
+       * snames.ads-tmpl: Add names Cursor, Element, Element_Type, No_Element,
+       and Previous, to support iterators over predefined containers.
+       * sprint.adb: Handle N_Iterator_Specification.
+
 2010-10-22  Thomas Quinot  <quinot@adacore.com>
 
        * sem_prag.adb, sem_ch12.adb, sem_util.adb, sem_util.ads