| 2011-12-23 Pascal Obry <obry@adacore.com> |
| |
| * prj.ads (For_Every_Project_Imported): Add In_Aggregate_Lib |
| parameter to generic formal procedure. |
| * prj.adb (For_Every_Project_Imported): Update accordingly. |
| (Recursive_Check): Likewise. Do not parse imported project for |
| aggregate library. This is needed as the imported projects are |
| there just to handle dependencies. |
| (Look_For_Sources): Likewise. |
| (Recursive_Add): Likewise. |
| * prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: |
| Add In_Aggregate_Lib parameter to routines used with |
| For_Every_Project_Imported generic procedure. |
| * prj-nmsc.adb (Tree_Processing_Data): Add In_Aggregate_Lib field. |
| (Check): Move where it is used. Fix implementation |
| to not check libraries that are inside aggregate libraries. |
| (Recursive_Check): Add In_Aggregate_Lib parameter. |
| |
| 2011-12-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch7.adb (Analyze_Package_Body, Has_Referencer): A generic |
| package is a referencer regardless of whether there is a |
| subsequent subprogram with an Inline pragma. |
| |
| 2011-12-23 Geert Bosch <bosch@adacore.com> |
| |
| * sem_ch3.adb (Can_Derive_From): Check matching Float_Rep on VMS. |
| |
| 2011-12-23 Pascal Obry <obry@adacore.com> |
| |
| * gnatcmd.adb, prj.adb, prj-nmsc.adb: Minor reformatting. |
| |
| 2011-12-22 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Create the objects |
| associated with exception handling unconditionally. |
| (Build_Adjust_Statements): Create the objects associated with |
| exception handling unconditionally. |
| (Build_Components): Create the objects associated with exception |
| handling unconditionally. |
| (Build_Finalize_Statements): Create the objects associated with |
| exception handling unconditionally. |
| (Build_Initialize_Statements): Create the objects associated with |
| exception handling unconditionally. |
| (Build_Object_Declarations): Set the proper location of the data |
| record when exception propagation is forbidden. |
| |
| 2011-12-22 Gary Dismukes <dismukes@adacore.com> |
| |
| * a-tienio.adb (Put): Test validity of Item parameters before |
| applying Image, and raise Constraint_Error for invalid values. |
| |
| 2011-12-22 Bob Duff <duff@adacore.com> |
| |
| * a-stwima.ads (Initialize,Adjust,Finalize): Add overriding indicators. |
| * a-ststio.ads (AFCB_Allocate,AFCB_Close,AFCB_Free,Read,Write): Add |
| overriding indicators. |
| |
| 2011-12-22 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-osinte-hpux-dce.ads: Update header to GPLv3 |
| |
| 2011-12-22 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cohase.ads, a-cohase.adb: Update to latest RM version. Add |
| aspect Constant_Reference to set type, and corresponding |
| functions. |
| * a-cihama.ads, a-cihama.adb: Update to latest RM version. Add |
| function Reference to provide a proper element iterator construct |
| over indefinite maps. |
| |
| 2011-12-22 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute, case 'Access): Do not insert |
| implicit conversion on prefix of Unrestricted_Access when prefix |
| is an explicit dereference. |
| |
| 2011-12-22 Vincent Pucci <pucci@adacore.com> |
| |
| * sem_dim.adb: Addressed all ??? comments. Replacement of warnings by |
| errors using continuation marks. |
| (Error_Dim_Msg_For_?): Renaming of Error_Dim_For_?. |
| |
| 2011-12-22 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_ch3.ads, sem_prag.adb: Minor code clean up. |
| |
| 2011-12-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * s-oscons-tmplt.c [__alpha__ && __osf__] (_XOPEN_SOURCE): Define. |
| |
| 2011-12-21 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.ads, sem_ch3.adb (Check_CPP_Type): New subprogram. |
| (Process_Full_View): Invoke Check_CPP_Type if processing the |
| full-view of a CPP type. |
| * sem_prag.adb (Process_Import_Or_Interface): Add missing support |
| for importing a CPP type that has an incomplete declaration. Move |
| to new routine Check_CPP_Type the code that verifies that |
| components of imported CPP types do not have default expressions. |
| |
| 2011-12-21 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Report_No_Sources): Remove argument Lang. Report |
| no sources even for languages that are not allowed. |
| (Add_Source): Get the source even when the language is not allowed. |
| |
| 2011-12-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb (Process_Formals): Add defensive code. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch7.adb, sem_ch13.adb (Analyze_Package_Specification): Build the |
| invariant procedure of a type declaration that is a completion and has |
| aspect specifications. |
| (Build_Invariant_Procedure): If the procedure is built for a |
| type declaration that is a completion, analyze body expliitly |
| because all private declarations have been already analyzed. |
| |
| 2011-12-21 Claire Dross <dross@adacore.com> |
| |
| * a-cfdlli.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb, |
| a-cofove.adb: Minor reformating on formal containers |
| |
| 2011-12-21 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Mains.Complete_Mains.Do_Complete): Remove |
| any main that is not in the list of restricted languages. |
| (Insert_Project_Sources.Do_Insert): Only add sources of languages |
| in the list of restricted languages. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Valid_Conversion): A type conversion is valid when |
| the target type is an anonymous access type and the operand is a |
| rewriting of an allocator. The conversion is typically inserted |
| when the designated type is an interface. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch9.adb (Establish_Task_Master): If the enclosing block |
| has no declarations, create new declarative list for it. |
| |
| 2011-12-21 Matthew Heaney <heaney@adacore.com> |
| |
| * a-rbtgbk.adb (Generic_Conditional_Insert): Fixed incorrect comment. |
| |
| 2011-12-21 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not |
| ignore representation attributes in Alfa mode, since formal |
| verification backend does not depend on actual physical |
| representation, but code may still refer to attribute values. |
| |
| 2011-12-21 Yannick Moy <moy@adacore.com> |
| |
| * par-ch13.adb (P_Aspect_Specifications): Recognize the cases |
| where a comma between two aspects is missing, or erroneously |
| replaced by a semicolon, issue an error and proceed with next |
| aspect. |
| * par.adb, sinfo.ads: Fix typos. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb (Mark_Coextensions): A coextension for an |
| object that is part of the expression in a return statement, |
| or part of the return object in an extended return statement, |
| must be allocated dynamically. |
| |
| 2011-12-21 Matthew Heaney <heaney@adacore.com> |
| |
| * a-crbtgk.adb (Generic_Conditional_Insert): Fixed incorrect comment. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iterator_Specification): If the name |
| of an element iterator is not an entity name we introduce a |
| local renaming declaration for it. To prevent spurious warnings |
| on parameterless function calls that return a container, when |
| expansion is disabled (either explicitly or because of a previous |
| errors) the name must be marked as not coming from source. |
| |
| 2011-12-21 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Separate |
| handling in CodePeer mode and only ignore Component_Size |
| attribute. |
| |
| 2011-12-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb (Process_Formals): Set proper mechanism for |
| formals whose types have conventions Ada_Pass_By_Copy or |
| Ada_Pass_By_Reference. |
| |
| 2011-12-21 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnat1drv.adb (Gnat1Drv): Always delete old scil files in |
| CodePeer mode. |
| |
| 2011-12-21 Robert Dewar <dewar@adacore.com> |
| |
| * comperr.adb: Minor reformatting. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * aspects.ads: New table Base_Aspect, to indicate that an aspect |
| is defined on a base type. |
| * aspects.adb (Find_Aspect): If the aspect is a Base_Aspect, |
| examine the representation items of the base type. |
| |
| 2011-12-21 Pascal Obry <obry@adacore.com> |
| |
| * gnat_ugn.texi, prj.ads, prj-nmsc.adb, prj-attr.adb, projects.texi, |
| snames.ads-tmpl: Use Encapsulated instead of Fully Standalone library. |
| |
| 2011-12-21 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_is_executable_file_attr) [_WIN32]: Add parentheses |
| to kill warning. |
| |
| 2011-12-21 Arnaud Charlet <charlet@adacore.com> |
| |
| * comperr.adb (Delete_SCIL_Files): Also delete .scilx files. |
| Fix implementation for child packages and package specs. |
| (Delete_SCIL_Files.Decode_Name_Buffer): New function. |
| |
| 2011-12-21 Robert Dewar <dewar@adacore.com> |
| |
| * err_vars.ads, a-cdlili.adb, a-cfdlli.ads, prj.adb, prj-nmsc.adb, |
| a-cbdlli.adb, a-cbdlli.ads, a-cfdlli.adb: Minor reformatting. |
| |
| 2011-12-21 Vincent Pucci <pucci@adacore.com> |
| |
| * s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads, |
| s-llflex.ads: Fix header. |
| |
| 2011-12-21 Thomas Quinot <quinot@adacore.com> |
| |
| * thread.c, s-oscons-tmplt.c, init.c (pthread_condattr_setclock): For |
| AIX 5.2, define as a dummy weak symbol in init.c. |
| (CLOCK_RT_Ada): Set to CLOCK_MONOTONIC on all versions of AIX. |
| |
| 2011-12-21 Thomas Quinot <quinot@adacore.com> |
| |
| * snames.ads-tmpl, sem_ch8.adb: Minor reformatting. |
| * sem_prag.adb: Minor comment clarification. |
| |
| 2011-12-21 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Report_No_Sources): New argument Lang for the |
| language name as a Name_Id. Do not report no sources if language |
| is not allowed. |
| (Add_Source): Do not add source if language is not allowed. |
| * prj.adb (Add_Restricted_Language): New procedure |
| (Is_Allowed_Language): New function |
| * prj.ads (Add_Restricted_Language): New procedure |
| (Is_Allowed_Language): New function |
| |
| 2011-12-21 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sem_dim.adb, sem_dim.ads, sem_ch12.adb, prj-conf.adb: |
| Minor reformatting. |
| |
| 2011-12-21 Claire Dross <dross@adacore.com> |
| |
| * a-cfdlli.ads (Constant_Indexing, Default_Iterator, |
| Iterator_Element): Added to type List. |
| (Not_No_Element, List_Iterator_Interfaces, Iterate, |
| Constant_Reference_Type, Constant_Reference): New. |
| * a-cfdlli.adb (type Iterator, Finalize, First, Last, Next, |
| Previous, Iterate, Not_No_Element, Constant_Reference): New. |
| |
| 2011-12-21 Gary Dismukes <dismukes@adacore.com> |
| |
| * gnat_ugn.texi: Minor reformatting. |
| |
| 2011-12-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): The cursor operation |
| Has_Element is the formal of Iterator_Interfaces, and within |
| the instantion of this package it is a renaming of some local |
| function with an unrelated name. Retrieve the operation from |
| the instance itself, not from the container package. |
| |
| 2011-12-21 Vincent Pucci <pucci@adacore.com> |
| |
| * exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String |
| replaced by Expand_Put_Call_With_Dimension_Symbol |
| * sem_ch12.adb (Analyze_Package_Instantiation): New check for |
| System.Dim_Float_IO and System.Dim_Integer_IO instantiation. |
| * sem_ch3.adb (Analyze_Declarations): Removed |
| Remove_Dimension_In_Declaration call. |
| * sem_dim.adb: Update comments. Redefine the |
| representation of a Rational. Propagate all changes involving |
| data structures and types throughout the pakage. Output the |
| dimension aggregates for each error messages. |
| ("/"): Rational constructor "/" removed for Whole operands. |
| ("/"): New rational operation "/" for Rational operands. |
| ("*"): Operation "*" between Rational and Int removed. |
| ("abs"): New unary operator "abs" for Rational. |
| (Analyze_Aspect_Dimension_System): Reorganized. |
| (Analyze_Dimension_Identifier): Removed. |
| (Copy_Dimensions): Removed. |
| (Create_Rational_From_Expr): New Boolean parameter. |
| (Dimensions_Msg_Of): New routine. Return |
| a string with the dimensions of the parameter. |
| (From_Dimension_To_String_Of_Symbols): Renaming of |
| From_Dimension_To_String_Id. |
| * sem_dim.ads: Update comments. |
| (Is_Dim_IO_Package_Instantiation): New routine. |
| (Remove_Dimension_In_Declaration): Removed. |
| * sem_res.adb (Resolve_Op_Expon): Reorganized calls of |
| Eval_Op_Expon_For_Dimensioned_Type and Eval_Op_Expon. |
| * s-diflio.ads, s-diinio.ads: Update comments. |
| |
| 2011-12-21 Pascal Obry <obry@adacore.com> |
| |
| * prj-attr.adb, snames.ads-tmpl: Add Library_Standalone, |
| Library_Fully_Standalone_Options and |
| Library_Fully_Standalone_Supported attributes. |
| * prj-nmsc.adb (Check_Library): Update check to take into |
| account fully standalone libraries. Such shared libraries can |
| only depend on static libraries. |
| (Check_Stand_Alone_Library): Add support for fully standalone libraries. |
| (Process_Project_Level_Simple_Attributes): Store value for |
| configuration attribute Library_Fully_Standalone_Supported. |
| * prj.ads, makeutl.adb (Standalone): New enumeration type. |
| (Project_Data): Standalone_Library now of type Standlone. |
| (Project_Configuration): Add Lib_Fully_Standalone_Supported |
| field. |
| (Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported |
| field. |
| * clean.adb (Clean_Project): Adjust to new type for Standalone. |
| * make.adb (Library_Phase): Adjust to new type for Standalone. |
| (Gnatmake): Likewise. |
| * mlib-prj.adb (Build_Library): Adjust to new type for |
| Standalone. |
| |
| 2011-12-21 Thomas Quinot <quinot@adacore.com> |
| |
| * gnatls.adb (Gnatls): Call Set_Standard_Error at startup, and then |
| Set_Standard_Output just before producing normal (non-diagnostic) |
| output. |
| * gnatcmd.adb (Gnatcmd): Call Set_Standard_Error at initialization |
| (and again after parsing project files). |
| |
| 2011-12-21 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Do_Autoconf): When the object directory does |
| not exist, create auto.cgpr in the directory where temporary |
| files are created. |
| |
| 2011-12-20 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Insert_Freeze_Node_For_Instance): Further |
| refinements on the placement of a freeze node for a package |
| instantiation, when the generic appears within a previous |
| instantiation in the same unit.If the current instance is within |
| the one that contains the generic, the freeze node for the |
| current one must appear in the current declarative part. Ditto |
| if the current instance is within another package instance. In |
| these cases the freeze node of the previous instance is is not |
| relevant. New predicate Enclosing_Body simplifies the process. |
| (Freeze_Subprogram_Body): Rename Enclosing_Body to |
| Enclosing_Package_Body, to prevent confusion with subprogram of |
| same name elsewhere. |
| (Install_Body): Recognize enclosing subprogram bodies to determine |
| whether freeze_node belongs in current declarative list. |
| |
| 2011-12-20 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Allow |
| attribute definition clause for renaming if generated internally |
| and generate duplicate clause to apply to renamed object. |
| (Rep_Item_Too_Late): Only diagnose source level entities |
| * prj-nmsc.adb: Minor reformatting. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-12-20 Bob Duff <duff@adacore.com> |
| |
| * opt.ads (List_Inherited_Aspects): Default to False |
| (i.e. -gnatw.L is the default). |
| * usage.adb: Document new default for -gnatw.L. |
| * gnat_ugn.texi: Document -gnatw.l and -gnatw.L switches. |
| * warnsw.adb (Set_Warning_Switch): Do not include |
| List_Inherited_Aspects in -gnatwa. |
| |
| 2011-12-20 Ed Schonberg <schonberg@adacore.com> |
| |
| * checks.adb (Apply_Type_Conversion_Checks): For a discrete type |
| with predicates, indicate unconditionally that a range check |
| is needed. |
| * exp_ch4.adb (Expand_N_In): When the membership test is rewritten |
| to incorporate a call to a predicate function, analyze expression |
| with checks suppressed, to prevent infinite recursion. |
| |
| 2011-12-20 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch11.adb (Find_Local_Handler): Guard the |
| search over individual exception choices in case the list of |
| handlers contains other (possibly illegal) constructs. |
| |
| 2011-12-20 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch8.adb (Find_Type): Test taggedness |
| of the Available_Type when checking for an illegal use of an |
| incomplete type, when the incomplete view is a limited view of |
| a type. Remove redundant Is_Tagged test. |
| |
| 2011-12-20 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb: Add with and use clause for Aspects. |
| (Is_Finalizable_Transient): Objects which denote Ada containers |
| in the context of iterators are not considered transients. Such |
| object must live for as long as the loop is around. |
| (Is_Iterated_Container): New routine. |
| |
| 2011-12-20 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_imgv.adb (Expand_Width_Attribute): Add a |
| type conversion from the enumeration subtype to its base subtype. |
| |
| 2011-12-20 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch4.adb (Operator_Check): Update the call to |
| Is_Dimensioned_Type. |
| * sem_dim.adb: Remove with and use clause for Namet.Sp. Reorganize |
| all type declarations and datastructures involved. Propagate |
| all changes involving data structures and types throughout |
| the pakage. Alphabetize all subprograms. Add ??? comments. |
| (AD_Hash): Removed. |
| (Analyze_Aspect_Dimension): Rewritten. This |
| routine now does all its checks in one pass rather than |
| two. Refactor code. The error message are now in a more GNAT-ish style. |
| (Create_Rational_From_Expr): This is now a function. |
| (Get_Dimensions): Removed. |
| (Get_Dimensions_String_Id): Removed. |
| (Dimensions_Of): New rouitne. |
| (Exists): New routines. |
| (Is_Invalid): New routine. |
| (Permits_Dimensions): Removed. |
| (Present): Removed. |
| (Set_Symbol): New routine. |
| (System_Of): New routine. |
| * sem_dim.ads: Rewrite the top level description of the |
| package. Alphabetize subprograms. Add various comments on |
| subprogram usage. Add ??? comments. |
| (Is_Dimensioned_Type): |
| Renamed to Has_Dimension_System. |
| * sem_res.adb (Resolve_Op_Expon): Update the call to Is_Dimensioned_Type |
| |
| 2011-12-20 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch13.adb (Check_Indexing_Functions): The return type of an |
| indexing function can be the default element type, and does not |
| need to be a reference type. |
| * sem_ch4.adb (Try_Container_Indexing): Ditto. |
| |
| 2011-12-20 Robert Dewar <dewar@adacore.com> |
| |
| * a-cdlili.ads, sem_cat.adb, sem_ch10.adb: Minor reformatting. |
| |
| 2011-12-20 Bob Duff <duff@adacore.com> |
| |
| * s-taprop-mingw.adb (Yield): Do_Yield is no longer Unreferenced. |
| |
| 2011-12-20 Vincent Pucci <pucci@adacore.com> |
| |
| * impunit.adb: s-dimkio, s-dimmks and s-dmotpr defined as GNAT |
| Defined Additions to System. |
| * Makefile.rtl: s-dimkio, s-dimmks and s-dmotpr added. |
| * s-dimkio.ads, s-dimmks.ads, s-dmotpr.ads: New files. |
| |
| 2011-12-20 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch4.adb (Traverse_Homonyms): Allow a homonym to match when |
| within an instance, even if the homonym is marked Is_Hidden at |
| this point. |
| |
| 2011-12-20 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_ch5.adb, s-diinio.adb, s-diinio.ads, sem_dim.adb, |
| sem_dim.ads, sem_res.adb, s-stposu.adb, s-stposu.ads, sem_ch4.adb, |
| s-diflio.adb, s-diflio.ads, exp_disp.adb, s-llflex.ads: Minor |
| reformatting. |
| * aspects.ads: Dimension[_Aspects] are GNAT defined. |
| |
| 2011-12-20 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check |
| renaming case. |
| |
| 2011-12-20 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_cat.adb, sem_ch10.adb (Analyze_With_Clause): For a WITH clause on |
| a child unit that is an illegal instantiation, mark the WITH clause in |
| error. |
| (Install_Siblings, Validate_Categorization_Dependency): Guard |
| against WITH clause marked as in error. |
| |
| 2011-12-20 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_res.adb (Resolve_Allocator): Warning on allocation |
| of tasks on a subpool and rewrite the allocator into a raise |
| Program_Error statement. |
| * s-stposu.ads, s-stposu.adb: Code reformatting. |
| (Create_Subpool): Remove formal parameter Storage_Size. |
| (Default_Subpool_For_Pool): Add the default implementation of this |
| routine. |
| (Set_Pool_Of_Subpool): Rename formal parameter Pool to To. Update |
| all the uses of the parameter. |
| |
| 2011-12-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * gcc-interface/Makefile.in (%86 linux%): |
| (LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS. |
| (LIBGNAT_TARGET_PAIRS_64): New. |
| (LIBGNAT_TARGET_PAIRS): Add either depending on multilib. |
| |
| 2011-12-18 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_param): Add comment about double |
| reference and DECL_POINTS_TO_READONLY_P. |
| * gcc-interface/trans.c (Identifier_to_gnu) <by_ref>: Always set the |
| TREE_READONLY flag on the first dereference of a double dereference. |
| |
| 2011-12-15 Arnaud Charlet <charlet@adacore.com> |
| |
| * a-numaux-vms.ads, s-asthan-vms-ia64.adb, s-auxdec-vms-ia64.adb, |
| s-memory-vms_64.adb, s-memory-vms_64.ads, s-osinte-vms-ia64.adb, |
| s-osinte-vms-ia64.ads, s-tasdeb-vms.adb: New files. |
| |
| 2011-12-15 Vincent Pucci <pucci@adacore.com> |
| |
| * aspects.adb, aspects.ads Aspect_Dimension and |
| Aspect_Dimension_System added |
| * exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String |
| case added |
| * gcc-interface/Make-lang.in: s-llflex, sem_dim added. |
| * impunit.adb :s-diflio and s-diinio defined as GNAT Defined |
| Additions to System. |
| * Makefile.rtl: s-diflio, s-diinio and s-llflex added |
| * par-prag.adb, sem_prag.adb: Pragma_Dimension removed |
| * rtsfind.ads: Expon_LLF added |
| * sem_aggr.adb (Resolve_Aggregate): handles aggregate for |
| Aspect_Dimension case |
| * sem_attr.adb (Resolve_Attribute): analyze dimension for |
| attribute |
| * sem_ch10.adb (Analyze_With_Clause): Avoid the warning messages |
| due to the use of a GNAT library for Dimension packages |
| * sem_ch13.adb (Analyze_Aspect_Specifications): |
| Aspect_Dimension and Aspect_Dimension_System cases added |
| (Check_Aspect_At_Freeze_Point): Aspect_Dimension and |
| Aspect_Dimension_System cases added |
| * sem_ch2.adb (Analyze_Identifier): analyze dimension for |
| identifier |
| * sem_ch3.adb (Analyze_Component_Declaration): analyze dimension |
| for component declaration (Analyze_Object_Declaration): analyze |
| dimension for object declaration (Analyze_Subtype_Declaration): |
| analyze dimension for subtype declaration |
| * sem_ch4.adb (Operator_Check): checks exponent is a rational |
| for dimensioned operand for a N_Op_Expon |
| * sem_ch5.adb (Analyze_Assignment): analyze dimension for |
| assignment (Analyze_Statements): removal of dimensions in all |
| statements |
| * sem_ch6.adb (Analyze_Return_Statement): analyze dimension for |
| return statement |
| * sem_ch8.adb (Analyze_Object_Renaming): analyze dimension for |
| object renaming |
| * sem_dim.adb, sem_dim.ads (Analyze_Aspect_Dimension): |
| analyze the expression for aspect dimension and store the |
| values in a Htable. |
| (Analyze_Aspect_Dimension_System): analyze |
| the expression for aspect dimension system and store the new |
| system in a Table. |
| (Analyze_Dimension): propagates dimension |
| (Expand_Put_Call_With_Dimension_String): add the dimension |
| string as a suffix of the numeric value in the output |
| (Has_Dimension): return True if the node has a dimension |
| (Remove_Dimension_In_Declaration): removal of dimension in the |
| expression of the declaration. |
| (Remove_Dimension_In_Statement): removal of dimension in statement |
| * sem_res.adb (Resolve): analyze dimension if the node |
| has already been analyzed. |
| (Resolve_Arithmetic_Op): analyze |
| dimension for arithmetic op. |
| (Resolve_Call): analyze dimension for function call. |
| (Resolve_Comparison_Op): analyze dimension for comparison op. |
| (Resolve_Equality_Op): analyze dimension for equality op. |
| (Resolve_Indexed_Component): analyze dimension for indexed component. |
| (Resolve_Op_Expon): analyze dimension for op expon. |
| (Resolve_Selected_Component): analyze dimension |
| for selected component. |
| (Resolve_Slice): analyze dimension for slice. |
| (Resolve_Unary_Op): analyze dimension for unary op |
| (Resolve_Type_Conversion): analyze dimension for type conversion |
| (Resolve_Unchecked_Type_Conversion): analyze dimension for |
| unchecked type conversion |
| * snames.ads-tmpl Name_Dimension, Name_Dimension_System, |
| Name_Dim_Float_IO, Name_Dim_Integer_IO, |
| Name_Generic_Elementary_Functions, Name_Sqrt added. |
| Pragma_Dimension removed |
| * s-diflio.adb, s-diflio.ads New GNAT library generic package |
| for dimensioned float type IO |
| * s-diinio.adb, s-diinio.ads New GNAT library generic package |
| for dimensioned integer type IO |
| * s-llflex.ads (Expon_LLF): exponentiation routine for long long |
| floats operand and exponent |
| |
| 2011-12-15 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb: Minor comment addition. |
| |
| 2011-12-15 Bob Duff <duff@adacore.com> |
| |
| * s-tasren.adb (Task_Count): Do not call Yield; E'Count is not a |
| task dispatching point. |
| * s-taprop-mingw.adb (Yield): Do not yield if Do_Yield is False. |
| |
| 2011-12-15 Robert Dewar <dewar@adacore.com> |
| |
| * sigtramp-ppcvxw.c, sigtramp.h: Fix header. |
| |
| 2011-12-15 Javier Miranda <miranda@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment |
| applied to a class-wide type under VM targets generate code which |
| invokes the function Get_Alignment to retrieve the value of the |
| alignment from the TSD. |
| * rtsfind.ads (RE_Get_Alignment): New entity. |
| |
| 2011-12-15 Robert Dewar <dewar@adacore.com> |
| |
| * g-comlin.adb: Fix header. |
| |
| 2011-12-15 Tristan Gingold <gingold@adacore.com> |
| |
| * gnatls.adb: Fix typo. |
| |
| 2011-12-15 Ed Falis <falis@adacore.com> |
| |
| * s-tpopsp-vxworks.adb: Update comment. |
| |
| 2011-12-15 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Array_Aggregate, Resolve_Aggr_Expr); If |
| the component type has predicates, generate corresponding check. |
| (Resolve_Record_Aggregate, Resolve_Aggr_Expr): Ditto. |
| |
| 2011-12-13 Cesar Strauss <cestrauss@gmail.com> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/49084 |
| * types.h (Byte): Change typedef to 'unsigned char'. |
| * atree.h (struct Flag_Word): Use Byte for 'convention' field. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * s-taprop-mingw.adb: Minor reformatting. |
| |
| 2011-12-12 Nicolas Roche <roche@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update dependencies. |
| Add gnattools4 target when building tools in canadian mode |
| |
| 2011-12-12 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Make_VM_TSD): Complete previous patch. |
| |
| 2011-12-12 Bob Duff <duff@adacore.com> |
| |
| * s-tpobop.adb: Use named notation. |
| * g-bytswa.ads, s-taprop.ads: Minor comment fix. |
| |
| 2011-12-12 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb: Minor comment update. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb, s-taprop-mingw.adb, exp_disp.adb, sem_ch13.adb: Minor |
| reformatting. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb, gnatls.adb: Minor reformatting. |
| |
| 2011-12-12 Ed Schonberg <schonberg@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): If a type declared in a generic |
| context has predicates, generate a freeze node for it. |
| * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): If expression |
| has not been analyzed yet, entity has not been frozen, so analyze |
| it now. |
| |
| 2011-12-12 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Make_VM_TSD): Generate code to store the value of |
| 'alignment in the TSD. |
| |
| 2011-12-12 Bob Duff <duff@adacore.com> |
| |
| * s-taprop-mingw.adb (Yield): Do not delay 1 millisecond in Annex D |
| mode. |
| |
| 2011-12-12 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Allocator): Update the master of an |
| anonymous access-to-controlled type to utilize the heterogeneous |
| master associated with the current unit. |
| |
| 2011-12-12 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): If the function |
| is not a completion, pre-analyze the expression now to prevent |
| spurious visibility on later entities. The body is inserted at |
| the end of the current declaration list or package to prevent |
| early freezing, but the visibility is established at the point |
| of definition. |
| |
| 2011-12-12 Bob Duff <duff@adacore.com> |
| |
| * sem.adb, sem.ads: Add debugging routines. |
| |
| 2011-12-12 Tristan Gingold <gingold@adacore.com> |
| |
| * gnatls.adb: (gnatls): Also add the objects dir in search list. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * exp_atag.adb, exp_atag.ads, exp_util.adb, exp_attr.adb, |
| sem_ch13.adb: Minor reformatting. |
| |
| 2011-12-12 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch7.adb (Uninstall_Declarations): Don't |
| apply check for incomplete types used as a result type for an |
| access-to-function type when compiling for Ada 2012 or later. |
| * sem_ch6.adb (Analyze_Subprogram_Declaration): |
| Specialize error message for interface subprograms that are |
| not declared abstract nor null (functions can't be declared as |
| null). Also, remove "(Ada 2005)" from message. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb (GNAT_Pragma): Check comes from source. |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * gnatls.adb: Minor reformatting. |
| |
| 2011-12-12 Javier Miranda <miranda@adacore.com> |
| |
| * a-tags.ads (Alignment): New TSD field. |
| (Max_Predef_Prims): Value lowered to 15 (or 9 in case of |
| configurable runtime) Update documentation of predefined |
| primitives since Alignment has been removed. |
| * exp_disp.ads Update documentation of slots of dispatching |
| primitives. |
| * exp_disp.adb (Default_Prim_Op_Position): Update slot |
| values since alignment is no longer a predefined primitive. |
| (Is_Predefined_Dispatch_Operation): Remove _alignment. |
| (Is_Predefined_Internal_Operation): Remove _alignment. |
| (Make_DT): Update static test on the value stored in a-tags.ads |
| for Max_Predef_Prims; store the value of 'alignment in the TSD. |
| * exp_atag.ads, exp_atag.adb (Build_Get_Alignment): New subprogram |
| that retrieves the alignment from the TSD |
| * exp_util.adb (Build_Allocated_Deallocate_Proc): For deallocation |
| of class-wide types obtain the value of alignment from the TSD. |
| * exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment |
| applied to a class-wide type invoke Build_Get_Alignment to |
| generate code which retrieves the value of the alignment from |
| the TSD. |
| * rtsfind.ads (RE_Alignment): New Ada.Tags entity |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For tagged |
| types if the value of the alignment is bigger than the Maximum |
| alignment then set the value of the alignment to the Maximum |
| alignment and report a warning. |
| * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate |
| spec of _alignment. |
| (Predefined_Primitive_Bodies): Do not generate body of _alignment. |
| |
| 2011-12-12 Gary Dismukes <dismukes@adacore.com> |
| |
| * freeze.adb (Freeze_Expression): Allow freezing of static |
| scalar subtypes that are prefixes of an attribute, even if not |
| yet marked static. Such attributes will get marked as static |
| later in Eval_Attribute (as called from Resolve_Attribute). |
| * sem_attr.adb (Eval_Attribute): Remove wrong code that does an |
| early return for attribute prefixes that are unfrozen source-level |
| types. This code was incorrectly bypassing folding of unfrozen |
| static subtype attributes in default expressions (the executable |
| example in the now-deleted comment was in fact illegal). |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * a-coinve.adb, sem_res.adb, prj-nmsc.adb, a-cobove.adb, a-convec.adb, |
| gnatls.adb, sem_ch13.adb, prj-env.adb, prj-env.ads: Minor reformatting. |
| |
| 2011-12-12 Tristan Gingold <gingold@adacore.com> |
| |
| * gsocket.h: Adjust previous patch. |
| |
| 2011-12-12 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_disp.adb: Minor reformatting. |
| |
| 2011-12-12 Tristan Gingold <gingold@adacore.com> |
| |
| * gnatls.adb (Search_RTS): New procedure. |
| (Scan_Ls_Arg): Move code that search the RTS. |
| (Gnatls): search the RTS later. |
| * prj-env.ads, prj-env.adb (Get_Runtime_Path): New function. |
| |
| 2011-12-12 Ed Falis <falis@adacore.com> |
| |
| * sysdep.c: Fix treatment of VxWorks task options so that run-times |
| built with __SPE__ get option VX_SPE_TASK while others get VX_FP_TASK. |
| |
| 2011-12-12 Bob Duff <duff@adacore.com> |
| |
| * sem_type.adb, sem_type.ads, sem_ch4.adb, treepr.adb, treepr.ads: |
| Minor cleanup and fiddling with debug printouts. |
| |
| 2011-12-12 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Get_Directories): For a non extending project, |
| always get a declared object and/or exec directory if it already |
| exists, even when there are no sources, but do not create them. |
| |
| 2011-12-12 Bob Duff <duff@adacore.com> |
| |
| * sem_res.adb (Resolve): Deal with the case where an abstract |
| operator is called with operands of type universal_integer. |
| |
| 2011-12-12 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb: Minor fix to dominance marker referencing WHILE |
| decision. |
| |
| 2011-12-12 Tristan Gingold <gingold@adacore.com> |
| |
| * mlib-tgt-specific-xi.adb: (Get_Target_Prefix): Simplify code. |
| |
| 2011-12-12 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb: Adjust dominant marker for branches of CASE |
| statements. |
| |
| 2011-12-12 Thomas Quinot <quinot@adacore.com> |
| |
| * gsocket.h, s-oscons-tmplt.c: Ensure we do not include any system |
| header file prior to redefining FD_SETSIZE. |
| |
| 2011-12-12 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): In |
| a generic context the aspect expressions may not have been |
| preanalyzed if there was no previous freeze point, so the |
| expressions must be preanalyzed now, and there is no conformance |
| to check for visibility changes. |
| |
| 2011-12-12 Matthew Heaney <heaney@adacore.com> |
| |
| * a-convec.adb, a-coinve.adb, a-cobove.adb (Iterator): Use |
| subtype Index_Type'Base for Index component (Finalize): Remove |
| unnecessary access check (First, Last): Cursor return value |
| depends on iterator index value (Iterate): Use start position as |
| iterator index value (Next, Previous): Forward to corresponding |
| cursor-based operation. |
| * a-cborma.adb (Iterate): Properly initialize iterator object (with 0 |
| as node index). |
| |
| 2011-12-12 Robert Dewar <dewar@adacore.com> |
| |
| * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting. |
| |
| 2011-12-12 Steve Baird <baird@adacore.com> |
| |
| * sem_ch3.adb (Check_Completion): Improve a comment. |
| |
| 2011-12-12 Tristan Gingold <gingold@adacore.com> |
| |
| * cstand.adb: Minor comment fix. |
| |
| 2011-12-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC |
| flag of elements to compute that of the constructor. |
| |
| 2011-12-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier |
| on references built for parameters which aren't specifically by-ref. |
| |
| 2011-12-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If there is an |
| alignment set on a renaming, assert that the renamed object is aligned |
| enough as to make it possible to honor it. |
| |
| 2011-12-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (gigi): Initialize the linemap earlier. |
| |
| 2011-12-06 Dave Korn <dave.korn.cygwin@gmail.com> |
| |
| * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS [windows targets]): |
| Correctly detect cygwin, which no longer has the '32' suffix, and use |
| appropriate implementations of the sockets and memory packages. |
| * sysdep.c (WIN_SETMODE): New define to choose the correct spelling of |
| setmode/_setmode for MinGW and Cygwin, respectively. |
| (__gnat_set_binary_mode [windows targets]): Use the above, and enable |
| the windows version for Cygwin as well as MinGW. |
| (__gnat_set_text_mode [windows targets]): Likewise. |
| (__gnat_ttyname [windows targets]): Provide a Cygwin implementation |
| in addition to the MinGW version. |
| (__gnat_is_windows_xp): Make available to Cygwin as well as MinGW. |
| (__gnat_get_stack_bounds): Likewise. |
| |
| 2011-12-05 Bob Duff <duff@adacore.com> |
| |
| * sem_ch4.adb: Minor comment fix. |
| |
| 2011-12-05 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Add documentation for -gnatw.e. |
| |
| 2011-12-05 Bob Duff <duff@adacore.com> |
| |
| * treepr.adb (pn): Print something useful for |
| Elmt_Ids. Add Write_Eol to 'when others' case, so the output |
| will be seen immediately in gdb. |
| |
| 2011-12-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * lib-writ.adb (Output_Main_Program_Line): A generic subprogram |
| is never a main program. |
| |
| 2011-12-05 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb: Various minor adjustments to dominance markers |
| generation. |
| |
| 2011-12-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): If the function is |
| a completion, generate a body reference for its defining entity, |
| before rewriting the node as a body. |
| * sem_util.adb (Defining_Entity): Add entry for expression |
| function. |
| |
| 2011-12-05 Bob Duff <duff@adacore.com> |
| |
| * sem_ch3.adb (Derive_Progenitor_Subprograms): Add Ultimate_Alias |
| to the Comes_From_Source check, to deal properly with the case |
| of indirect inheritance of "=". |
| |
| 2011-12-05 Thomas Quinot <quinot@adacore.com> |
| |
| PR ada/51307 |
| * s-oscons-tmplt.c: On HP-UX, CLOCK_REALTIME is an enum literal, |
| not a macro. |
| |
| 2011-12-05 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Generate dominance |
| information in SCOs. |
| |
| 2011-12-02 Eric Botcazou <ebotcazou@adacore.com> |
| Thomas Quinot <quinot@adacore.com> |
| |
| * gcc-interface/Makefile.in (INCLUDES): Remove $(srcdir)/config. |
| (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) except for VxWorks. |
| Add thread.c to LIBGNAT_SRCS so that a symlink is created in ada/rts, |
| which allows the file to be installed in adainclude. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-12-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Constrain_Access): Undo previous |
| patch for this routine. Required since the RM rule 3.7.1(7/3) |
| applies to all access types. |
| |
| 2011-12-02 Bob Duff <duff@adacore.com> |
| |
| * sem_ch6.adb: Minor comment fix. |
| |
| 2011-12-02 Joel Sherrill <joel.sherrill@oarcorp.com> |
| |
| * s-tpopsp-rtems.adb: Use ATCB_Key rather than RTEMS_Ada_Self variable |
| for consistency with other ports. |
| * s-osinte-rtems.adb: Add body for dummy implementation of |
| pthread_rwlockattr_setkind_np(). |
| * s-osinte-rtems.ads: Add missing clock and rwlock bindings. |
| * terminals.c: Add __rtems__ conditionals to account for differences |
| in termios implementation. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_attr.adb, a-comutr.adb, a-cbmutr.adb, |
| a-cbmutr.ads: Minor reformatting. |
| |
| 2011-12-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_dbug.adb: Comment reformatting. |
| (Get_External_Name): Use Reset_Buffers to reset the contents of |
| Name_Buffer and Homonym_Numbers. |
| (Qualify_All_Entity_Names): Reset the contents of Name_Buffer and |
| Homonym_Numbers before creating a new qualified name for a particular |
| entity. |
| (Reset_Buffers): New routine. |
| |
| 2011-12-02 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbmutr.ads (No_Node): Moved declaration from body to spec |
| * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Iterator): Derives |
| from Root_Iterator. |
| (Child_Iterator): Derives from Root_Iterator. |
| (Finalize): Implemented as an override operation for Root_Iterator. |
| (First): Return value depends on Subtree component. |
| (Last): Component was renamed from Parent to Subtree. |
| (Next): Checks parameter value, and uses simplified loop. |
| (Iterate): Forwards to Iterate_Subtree. |
| (Iterate_Children): Component was renamed from Parent to Subtree. |
| (Iterate_Subtree): Checks parameter value |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * usage.adb: Add lines for -gnatw.n and -gnatw.N |
| (atomic sync info msgs). |
| |
| 2011-12-02 Steve Baird <baird@adacore.com> |
| |
| * sem_ch3.adb (Check_Completion): An Ada 2012 |
| generic formal type doesn't require a completion. |
| |
| 2011-12-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_util.adb (Set_Debug_Info_Needed): Also set the flag on the |
| packed array type if it is to be set on the array type used to |
| represent it. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Eliminate confusing use of type name. |
| |
| 2011-12-02 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch10.adb (Analyze_Compilation_Unit): For a library subprogram |
| body that acts as spec, do not create a shallow copy of the context |
| clause for the synthetized spec (instead, use the same list as |
| in the body). |
| |
| 2011-12-02 Bob Duff <duff@adacore.com> |
| |
| * gnat_ugn.texi: Clarify usage of -p binder switch. |
| |
| 2011-12-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_util.ads, sem_util.adb, sem_aux.ads, sem_aux.adb |
| (Effectively_Has_Constrained_Partial_View): Moved to sem_aux |
| (In_Generic_Body): Moved to sem_aux. |
| (Unit_Declaration_Node): Moved to sem_aux. |
| * einfo.ads (Effectively_Has_Constrained_Partial_View): Complete |
| documentation. |
| * exp_attr.adb, live.adb, sem_ch10.adb, checks.adb, sem.adb, |
| rtsfind.adb, sem_attr.adb, sem_elab.adb, exp_ch4.adb, sem_ch4.adb, |
| exp_ch13.adb: Add with-clause on Sem_Aux. |
| |
| 2011-12-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Unique_Name): Reach through Unique_Entity to |
| get the name of the entity. |
| (Unique_Entity): Correct case for subprogram stubs. |
| |
| 2011-12-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Check_Initialization): Do not emit warning on |
| initialization of limited type object in Alfa mode. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * sinfo.ads: Minor reformatting. |
| * gnat_ugn.texi: Fix confusion in use of term "type name". |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb: Minor change in error message. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch9.adb, prj-part.adb, vms_data.ads, sem_ch8.adb: Minor |
| reformatting. |
| |
| 2011-12-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Constrain_Access): Enable on Ada 2005 mode the |
| static check of the rule of general access types whose designated |
| type has discriminants. |
| * sem_util.ads, sem_util.adb |
| (Effectively_Has_Constrained_Partial_View): New subprogram. |
| (In_Generic_Body): New subprogram. |
| * einfo.ads (Has_Constrained_Partial_View): Adding documentation. |
| * sem_prag.adb (Inside_Generic_Body): Removed. Replaced by new |
| subprogram In_Generic_Body. |
| * exp_attr.adb, checks.adb, sem_attr.adb, exp_ch4.adb, |
| sem_ch4.adb: In addition, this patch replaces the occurrences of |
| Has_Constrained_Partial_View by |
| Effectively_Has_Constrained_Partial_View. |
| |
| 2011-12-02 Matthew Heaney <heaney@adacore.com> |
| |
| * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Iterator): Rename |
| Position component. |
| (Finalize): Remove unnecessary access check. |
| (First): Forward to First_Child. |
| (Last): Forward to Last_Child. |
| (Iterate): Check preconditions for parent node parameter. |
| (Next): Forward to Next_Sibling. |
| (Previous): Forward to Previous_Sibling. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-coinve.adb, a-coorma.adb, freeze.adb, a-coorse.adb, a-comutr.adb, |
| a-coormu.adb, a-convec.adb: Minor reformatting. |
| |
| 2011-12-02 Matthew Heaney <heaney@adacore.com> |
| |
| * a-coormu.ads, a-ciormu.ads: Declare iterator factory function. |
| * a-ciormu.adb, a-ciormu.adb (Iterator): Declare concrete |
| Iterator type. |
| (Finalize): Decrement busy counter. |
| (First, Last): Cursor return value depends on iterator node value. |
| (Iterate): Use start position as iterator node value. |
| (Next, Previous): Forward to corresponding cursor-based operation. |
| |
| 2011-12-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-cborma.adb, a-cbhama.adb, a-cbdlli.adb, a-cbmutr.adb, |
| a-cbhase.adb, a-cdlili.adb, a-cihama.adb, a-ciorse.adb, a-cidlli.adb, |
| a-cimutr.adb, a-cihase.adb, a-cohama.adb, a-cborse.adb, |
| a-ciorma.adb, a-cobove.adb: Minor reformatting. |
| |
| 2011-12-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR bootstrap/51201 |
| * gcc-interface/Make-lang.in: Initialize RTS_DIR with = instead of :=. |
| |
| 2011-11-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * s-taprop-tru64.adb (Create_Task): Use Unrestricted_Access. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * thread.c, s-oscons-tmplt.c: Generate __gnat_pthread_condattr_setup |
| only on platforms where this is required, as determined by |
| s-oscons.h. |
| |
| 2011-11-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch9.adb: No check on entry index if error on index. |
| |
| 2011-11-23 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Return_Statement): Improve error messages for |
| return statements nested inside an extended_return_statement. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| * gcc-interface/Makefile.in (MISCLIB): Add -lutil for BSD targets. |
| |
| 2011-11-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * freeze.adb (Freeze_All_Ent): An incomplete type is not |
| frozen by a subprogram body that does not come from source. |
| |
| 2011-11-23 Pascal Obry <obry@adacore.com> |
| |
| * s-oscons-tmplt.c: Add PTY_Library constant. It contains |
| the library for pseudo terminal support. |
| * g-exptty.ads: Add pseudo-terminal library into a Linker_Options |
| pragma. |
| |
| 2011-11-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch9.adb: No check on entry family index if generic. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch9.adb, s-taprop.ads, s-taprop-hpux-dce.adb, s-taprop-irix.adb, |
| s-taprop-posix.adb, s-taprop-rtx.adb, s-taprop-solaris.adb, |
| s-taprop-tru64.adb, s-taprop-vxworks.adb: Move dependency on |
| System.OS_Constants from shared spec of |
| System.Tasking.Primitive_Operations to the specific body variants |
| that really require this dependency. |
| |
| 2011-11-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Subprogram_Renaming_Declaration): |
| If the declaration has aspects, analyze them so they can be |
| properly rejected. |
| |
| 2011-11-23 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-comutr.adb, a-coorma.adb, a-coorse.adb, a-convec.adb, a-cihase.adb, |
| a-cimutr.adb, a-coinve.adb, a-ciorma.adb, a-ciorse.adb, a-cobove.adb, |
| a-cohama.adb, a-cihama.adb, a-cidlli.adb, a-cdlili.adb, a-cbhama.adb, |
| a-cbhase.adb, a-cbmutr.adb, a-cborma.adb, a-cborse.adb, a-cbdlli.adb: |
| Add with and use clause for Ada.Finalization. Type |
| Iterator and Child_Iterator are now derived from Limited_Controlled. |
| (Finalize): New routine. |
| (Iterate): Add a renaming of counter Busy and |
| increment it. Update the return aggregate. |
| (Iterate_Children): Add a renaming of |
| counter Busy and increment it. Update the return aggregate. |
| (Iterate_Subtree): Add a renaming of counter Busy and increment |
| it. Update the return aggregate. |
| * a-cdlili.ads, a-cidlli.ads: Type List_Access is now a general access |
| type. |
| * a-cihama.ads: Type Map_Access is now a general access type. |
| * a-comutr.ads, a-cimutr.ads: Use type Natural for the two locks |
| associated with the tree. |
| * a-cohama.ads: Type Map_Access is now a general access type. |
| * a-coinve.ads, a-convec.ads: Type Vector_Access is now a general |
| access type. |
| * exp_ch5.adb (Expand_Iterator_Loop): Do not create a block |
| to wrap the loop as this is done at an earlier step, during |
| analysis. The declarations of the iterator and the cursor use |
| the usual Insert_Action mechanism when added into the tree. |
| * sem_ch5.adb (Analyze_Loop_Statement): Remove local constant |
| Loop_Statement and replace all respective uses by N. Add local |
| constant Loc. Preanalyze the loop iterator to discover whether |
| it is a container iterator and if it is, wrap the loop in a |
| block. This ensures that any controlled temporaries produced |
| by the iteration scheme share the same lifetime of the loop. |
| (Is_Container_Iterator): New routine. |
| (Is_Wrapped_In_Block): New routine. |
| (Pre_Analyze_Range): Move spec and body to the library level. |
| |
| 2011-11-23 Sergey Rybin <rybin@adacore.com frybin> |
| |
| * gnat_ugn.texi, vms_data.ads: Add documentation for new gnatpp option |
| that controls casing of type and subtype names. |
| |
| 2011-11-23 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb: Minor addition of comments. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * prj-part.adb (Extension_Withs): New global variable, |
| contains the head of the list of WITH clauses from the EXTENDS |
| ALL projects for which virtual packages are being created. |
| (Look_For_Virtual_Projects_For): When recursing through |
| an EXTENDS ALL, add the WITH clauses of the extending |
| project to Extension_Withs. When adding a project to the |
| Virtual_Hash, record the associated Extension_Withs list. |
| (Create_Virtual_Extending_Project): Add a copy of the appropriate |
| Extension_Withs to the virtual project. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * mlib-tgt-specific-vxworks.adb: Minor reformatting. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * Make-generated.in (Sdefault.Target_Name): Set to |
| $(target_noncanonical) instead of $(target) for consistency. |
| |
| 2011-11-23 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Iterator): Declared |
| Iterator type as limited (First, Last): Cursor return value |
| depends on iterator node value (Iterate): Use start position as |
| iterator node value (Next, Previous): Forward to corresponding |
| cursor-based operation. |
| |
| 2011-11-23 Matthew Heaney <heaney@adacore.com> |
| |
| * a-coorse.ads, a-ciorse.ads, a-cborse.ads (Set_Iterator_Interfaces): |
| Renamed from Ordered_Set_Iterator_Interfaces. |
| * a-coorse.adb, a-ciorse.adb, a-cborse.adb (Iterator): Declared |
| Iterator type as limited (First, Last): Cursor return value |
| depends on iterator node value (Iterate): Use start position as |
| iterator node value (Next, Previous): Forward to corresponding |
| cursor-based operation. |
| * a-cohase.ads, a-cohase.adb: Implemented forward iterator. |
| * a-cihase.adb, a-cbhase.adb (Iterator): Removed unnecessary |
| node component (First, Next): Forward call to corresponding |
| cursor-based operation (Iterate): Representation of iterator no |
| longer has node component |
| |
| 2011-11-23 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_intr.adb (Expand_Unc_Deallocation): Ensure that the |
| dereference has a proper type before the side effect removal |
| mechanism kicks in. |
| * sem_ch3.adb (Analyze_Subtype_Declaration): Handle a rare case |
| where the base type of the subtype is a private itype created |
| to act as the partial view of a constrained record type. This |
| scenario manifests with equivalent class-wide types for records |
| with unknown discriminants. |
| |
| 2011-11-23 Jerome Guitton <guitton@adacore.com> |
| |
| * s-osprim-vxworks.adb (Clock): Use Clock_RT_Ada. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * s-oscons-tmplt.c: Fix unbalanced preprocessor directives Minor |
| reformatting/reorganization. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * g-htable.ads: Remove old comments. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_imgv.adb: Minor reformatting. |
| |
| 2011-11-23 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch9.adb (Analyze_Entry_Declaration): Check for entry |
| family bounds out of range. |
| |
| 2011-11-23 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cohama.adb, a-cihama.adb, a-cbhama.adb (Iterator): Declare |
| type as limited, and remove node component. |
| (First, Next): Forward call to corresponding cursor-based operation. |
| (Iterate): Representation of iterator no longer has node component. |
| |
| 2011-11-23 Yannick Moy <moy@adacore.com> |
| |
| * exp_util.adb: Revert previous change to remove side-effects in Alfa |
| mode, which is not the correct thing to do for renamings. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * s-osinte-hpux.ads, s-taprop-vxworks.adb, s-taprop-tru64.adb, |
| s-osinte-vxworks.ads, s-osinte-aix.ads, s-osinte-lynxos.ads, |
| s-osinte-solaris-posix.ads, s-taprop-solaris.adb, a-exetim-posix.adb, |
| s-osinte-irix.ads, s-osinte-solaris.ads, s-oscons-tmplt.c, |
| s-taprop-irix.adb, s-osinte-hpux-dce.ads, Makefile.rtl, |
| s-osinte-tru64.ads, s-osinte-darwin.ads, s-taprop.ads, |
| s-osinte-freebsd.ads, s-osinte-lynxos-3.ads, s-taprop-hpux-dce.adb, |
| s-taprop-posix.adb: Remove hard-coded clock ids; |
| instead, generate them in System.OS_Constants. |
| (System.OS_Constants.CLOCK_RT_Ada): New constant denoting the |
| id of the clock providing Ada.Real_Time.Monotonic_Clock. |
| * thread.c: New file. |
| (__gnat_pthread_condattr_setup): New function. For platforms where |
| CLOCK_RT_Ada is not CLOCK_REALTIME, set appropriate condition |
| variable attribute. |
| |
| 2011-11-23 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb: Restore the use of Expander_Active instead of |
| Full_Expander_Active, so that the evaluation is forced in Alfa |
| mode too. Otherwise, we end up with an unexpected insertion in a |
| place where it is not supposed to happen, on default parameters |
| of a call. |
| |
| 2011-11-23 Thomas Quinot <quinot@adacore.com> |
| |
| * prj-pp.adb, prj-pp.ads: Minor new addition: wrapper procedure "wpr" |
| for Pretty_Print, for use from within gdb. |
| |
| 2011-11-23 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Wrap the expanded loop |
| and the cursor declarations in a block, so that the loop variable |
| is local to the construct. |
| |
| 2011-11-23 Matthew Heaney <heaney@adacore.com> |
| |
| * a-coorma.ads, a-ciorma.ads, a-cborma.ads (Iterate): Returns |
| type Reversible_Iterator'Class. |
| * a-coorma.adb, a-ciorma.adb, a-cborma.adb (Iterator): |
| Declare type as limited. |
| (First, Last): Return value depends on iterator's start node value. |
| (Next, Previous): Call corresponding Cursor-based operation. |
| (Iterate): Indicate whether complete or partial iteration |
| |
| 2011-11-23 Robert Dewar <dewar@adacore.com> |
| |
| * errout.adb: Minor reformattin (Finalize): Take templates into |
| account for warning suppression. |
| * errout.ads (Set_Specific_Warning_Off): Add Used parameter. |
| * erroutc.adb: Minor reformatting (Finalize): Take generic |
| templates into account for warning suppress. |
| * erroutc.ads (Set_Specific_Warning_Off): Add Used parameter. |
| * sem_prag.adb: Minor reformatting (Analyze_Pragma, |
| case Warnings): Provide Used parameter in call to |
| Set_Specific_Warnings_Off (to deal with generic template case). |
| |
| 2011-11-23 Pascal Obry <obry@adacore.com> |
| |
| * sem_prag.adb (Process_Convention): Better error message for |
| stdcall convention on dispatching calls. |
| |
| 2011-11-23 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch4.adb, sem_ch13.adb: Minor reformatting. |
| |
| 2011-11-23 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.adb (Expand_Simple_Function_Return): Add missing |
| implicit type conversion when the returned object is allocated |
| in the secondary stack and the type of the returned object is |
| an interface. Done to force generation of displacement of the |
| "this" pointer. |
| |
| 2011-11-23 Pascal Obry <obry@adacore.com> |
| |
| * impunit.adb: Add g-exptty and g-tty units. |
| |
| 2011-11-23 Robert Dewar <dewar@adacore.com> |
| |
| * exp_imgv.adb: Minor code reorganization (use Make_Temporary). |
| |
| 2011-11-23 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb, par-ch6.adb, sem_res.adb, par-util.adb: Minor |
| reformatting. |
| |
| 2011-11-23 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Place error on |
| line of precondition/ postcondition/invariant. |
| |
| 2011-11-23 Pascal Obry <obry@adacore.com> |
| |
| * g-exptty.ads, g-exptty.adb, g-tty.ads, g-tty.adb, |
| terminals.c: New files. |
| Makefile.rtl: Add these new files. |
| * gnat_rm.texi: Add documentation for GNAT.Expect.TTY. |
| * gcc-interface/Makefile.in: Add g-exptty, g-tty, terminals.o |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * exp_imgv.adb (Expand_Width_Attribute): Handle case of Discard_Names. |
| * sem_attr.adb (Eval_Attribute, case Width): Ditto. |
| |
| 2011-11-21 Thomas Quinot <quinot@adacore.com> |
| |
| * sinfo.ads: Minor reformatting. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * exp_util.adb: Minor reformatting. Update comments. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * exp_prag.adb, exp_util.adb, sinfo.ads, sem_res.adb, s-stposu.adb, |
| sem_attr.adb, s-stposu.ads, s-taprop-solaris.adb, s-taprop-irix.adb, |
| sem_ch6.adb: Minor reformatting. |
| |
| 2011-11-21 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taprop-irix.adb, s-taprop-solaris.adb (Create_Task): Use |
| Unrestricted_Access to deal with fact that we properly detect the |
| error if Access is used. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * exp_prag.adb (Expand_Pragma_Check): Place error on first character |
| of expression. |
| * sem_res.adb (Resolve_Short_Circuit): Place error on first |
| character of expression. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * exp_util.adb (Remove_Side_Effects): Do nothing in Alfa mode. |
| |
| 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference, case |
| Max_Size_In_Storage_Elements): Account for the size of the |
| hidden list header which precedes controlled objects allocated |
| on the heap. |
| * rtsfind.ads: Add RE_Header_Size_With_Padding to the runtime |
| tables. |
| * sinfo.adb (Header_Size_Added): New routine. |
| (Set_Header_Size_Added): New routine. |
| * sinfo.ads: Add flag Controlled_Header_Added along with |
| associated comment. |
| (Header_Size_Added): New inlined routine. |
| (Set_Header_Size_Added): New inlined routine. |
| * s-stposu.adb (Allocate_Any_Controlled): Use |
| Header_Size_With_Padding to calculate the proper |
| size of the header. |
| (Deallocate_Any_Controlled): Use |
| Header_Size_With_Padding to calculate the proper size |
| of the header. (Header_Size_With_Padding): New routine. |
| (Nearest_Multiple_Rounded_Up): Removed along with its uses. |
| * s-stposu.ads (Header_Size_With_Padding): New routine. |
| |
| 2011-11-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * aspects.adb: Aspect specifications are allowed on renaming |
| declarations |
| * par-ch6.adb (P_Subprogram): Parse aspect specifications in a |
| subprogram renaming declaration |
| |
| 2011-11-21 Tristan Gingold <gingold@adacore.com> |
| |
| * env.c: Remove unused declaration. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * s-os_lib.ads: Minor style fix. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_dup2): When fd are stdout, stdin or stderr and |
| identical, do nothing on Windows XP. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl): |
| Use Full_Expander_Active instead of Expander_Active to control |
| the forced evaluation of expressions for the sake of generating |
| checks. |
| |
| 2011-11-21 Thomas Quinot <quinot@adacore.com> |
| |
| * init.c: On FreeBSD, stack checking failures may raise SIGBUS. |
| |
| 2011-11-21 Tristan Gingold <gingold@adacore.com> |
| |
| * sysdep.c (mode_read_text, mode_write_text, mode_append_text, |
| mode_read_binary, mode_write_binary, mode_append_binary, |
| mode_read_text_plus, mode_write_text_plus, mode_append_text_plus, |
| mode_read_binary_plus, mode_write_binary_plus, |
| mode_append_binary_plus): Remove unused declarations. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi: Minor rewording. |
| |
| 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_imgv.adb (Expand_Width_Attribute): Emit |
| an error message rather than a warning when pragma Discard_Names |
| prevents the computation of 'Width. Do not emit an error through |
| the use of RE_Null. |
| |
| 2011-11-21 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Add |
| implicit type conversion when the type of the allocator is an |
| interface. Done to force generation of displacement of the "this" |
| pointer when required. |
| |
| 2011-11-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sinfo.ads, sinfo.adb: Corresponding_Spec applies to expression |
| functions, and is set when the expression is a completion of a |
| previous declaration. |
| * sem_ch6.adb (Analyze_Expression_Function): To determine properly |
| whether an expression function completes a previous declaration, |
| use Find_Corresponding_Spec, as when analyzing a subprogram body. |
| |
| 2011-11-21 Steve Baird <baird@adacore.com> |
| |
| * sem_util.adb (Deepest_Type_Access_Level): Improve comment. |
| (Type_Access_Level): Improve comment. |
| |
| 2011-11-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Makefile.in (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) by |
| means of -iquote unconditionally. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_util.adb, sem_res.adb, sem_attr.adb: Minor |
| reformatting. |
| |
| 2011-11-21 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taprop-posix.adb (Create_Task): Use Unrestricted_Access |
| to deal with fact that we properly detect the error if Access |
| is used. |
| |
| 2011-11-21 Steve Baird <baird@adacore.com> |
| |
| * sem_util.ads: Update comment describing function |
| Deepest_Access_Level. |
| * sem_util.adb (Deepest_Type_Access_Level): Return Int'Last for a |
| generic formal type. |
| (Type_Access_Level): Return library level |
| for a generic formal type. |
| * sem_attr.adb (Resolve_Attribute): Replace two Type_Access_Level |
| calls with calls to Deepest_Type_Access_Level. |
| * sem_ch3.adb (Analyze_Component_Declaration): replace a |
| Type_Access_Level call with a call to Deepest_Type_Access_Level. |
| * sem_res.adb (Resolve_Allocator.Check_Allocator_Discrim_Accessibility): |
| Replace three Type_Access_Level calls with calls to |
| Deepest_Type_Access_Level. |
| (Resolve_Allocator): Replace a Type_Access_Level call with a call to |
| Deepest_Type_Access_Level. |
| (Valid_Conversion.Valid_Array_Conversion): Replace a |
| Type_Access_Level call with a call to Deepest_Type_Access_Level. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, s-taprop-vms.adb, opt.ads: Minor reformatting. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sinput.ads: Minor comment fix. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference, case First_Bit, |
| Last_Bit, Position): Handle 2005 case. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * s-atocou-builtin.adb (Decrement): Use Unrestricted_Access |
| to deal with fact that we properly detect the error if Access |
| is used. |
| (Increment): Same fix. |
| * s-taprop-linux.adb (Create_Task): Use Unrestricted_Access |
| to deal with fact that we properly detect the error if Access |
| is used. |
| * sem_util.adb (Is_Volatile_Object): Properly record that A.B is |
| volatile if the B component is volatile. This affects the check |
| for passing such a by reference volatile actual to a non-volatile |
| formal (which should be illegal) |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Freeze_Enumeration_Type): Make sure to set both |
| size and alignment for foreign convention enumeration types. |
| * layout.adb (Set_Elem_Alignment): Redo setting of alignment |
| when size is set. |
| |
| 2011-11-21 Yannick Moy <moy@adacore.com> |
| |
| * checks.adb (Apply_Access_Check, Apply_Arithmetic_Overflow_Check, |
| Apply_Discriminant_Check, Apply_Divide_Check, |
| Apply_Selected_Length_Checks, Apply_Selected_Range_Checks, |
| Build_Discriminant_Checks, Insert_Range_Checks, Selected_Length_Checks, |
| Selected_Range_Checks): Replace reference to Expander_Active |
| with reference to Full_Expander_Active, so that expansion of |
| checks is not performed in Alfa mode |
| |
| 2011-11-21 Tristan Gingold <gingold@adacore.com> |
| |
| * s-taprop-vms.adb (Create_Task): Use Unrestricted_Access to deal with |
| fact that we properly detect the error if Access is used. |
| |
| 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * par-ch4.adb (P_Quantified_Expression): Add an Ada 2012 check. |
| |
| 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_imgv.adb: Add with and use clause for Errout. |
| (Expand_Width_Attribute): Emit a warning when in |
| configurable run-time mode to provide a better diagnostic message. |
| |
| 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-finmas.adb (Finalize): Add comment concerning double finalization. |
| |
| 2011-11-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Access_Definition): If the access definition |
| is itself the return type of an access to function definition |
| which is ultimately the return type of an access to subprogram |
| declaration, its scope is the enclosing scope of the ultimate |
| access to subprogram. |
| |
| 2011-11-21 Steve Baird <baird@adacore.com> |
| |
| * sem_res.adb (Valid_Conversion): If a conversion was legal |
| in the body of a generic, then the corresponding conversion is |
| legal in the expanded body of an instance of the generic. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * s-utf_32.adb (Is_UTF_32_Line_Terminator): Recognize NEL as |
| line terminator. |
| * sinput.ads: Add section on Handling of Source Line Terminators. |
| * types.ads (Line_Terminator): Adjust comments. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * frontend.adb (Frontend): Capture restrictions from config files |
| * lib-load.adb (Load_Unit): Save/set/restore restriction pragma |
| information |
| * lib-xref.adb (Generate_Reference): Fix handling of obsolescent |
| references. This was noticed during debugging, but it is not |
| known if it causes real bugs. |
| * restrict.ads, restrict.adb: New routines to save/set/restore |
| non-partition-wide restrictions. |
| * s-rident.ads: Comment changes for new handling of |
| No_Elaboration_Code |
| * sem.adb (Sem): Save/Set/Restore non-partition-wide restrictions |
| * sem_ch10.adb (Analyze_Compilation_Unit): Remove incomplete |
| attempt to save/restore non-partition-wide restrictions (now |
| this work is all done in Sem). |
| * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): |
| Special handling for restriction No_Elaboration_Code. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Document new handling of restrictions pragmas. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * s-taprop-linux.adb (Initialize_Lock): Do not allocate a cond |
| attribute as not needed. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb: Minor reformatting. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * gnat_rm.texi: Document restriction for stdcall convention on |
| dispatching calls. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * sem_prag.adb (Process_Convention): A dispatching call cannot |
| have a stdcall calling convention. |
| |
| 2011-11-21 Pascal Obry <obry@adacore.com> |
| |
| * s-taprop-linux.adb (Initialize_Lock): Do not allocate a |
| mutex attribute as not needed. |
| (Initialize_TCB): Likewise. |
| (Initialize): Likewise. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb (Is_Public_Subprogram_For): New procedure |
| (Process_PPCs): Invariants only apply to public subprograms. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_util.adb, sem_util.ads, sem_attr.adb, restrict.adb, |
| restrict.ads: Fix for No_Implicit_Aliasing in the renames case. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * a-finali.ads: Use pragma Pure_12 for this unit |
| * aspects.adb: Add aspect Pure_12 |
| * aspects.ads: Add aspect Pure_12 |
| * opt.ads: Add note on Pure_12 |
| * par-prag.adb: Add dummy entry for Pure_12 |
| * sem_prag.adb: Implement Pure_12 pragma |
| * snames.ads-tmpl: Add Entry for Pure_12 |
| |
| 2011-11-21 Sergey Rybin <rybin@adacore.com frybin> |
| |
| * vms_data.ads: Add qualifiers for new gnatpp options |
| '--call_threshold' and '--par_threshold". |
| * gnat_ugn.texi: Add description for new gnatpp options |
| '--call_threshold' and '--par_threshold". |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * lib.ads: Minor reformatting. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * lib-load.ads: Add comment. |
| |
| 2011-11-21 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_elab.adb: Minor reformatting |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch6.adb: Minor reformatting. |
| |
| 2011-11-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Check_Formal_Package_Instance): If a formal |
| subprogram of the formal package is covered by an others |
| association with a box initialization, no check is needed |
| against the actual in the instantiation of the formal package. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * sem_elab.adb (Check_Internal_Call_Continue): Suppress junk |
| elab warning from within precondition/postcondition etc. |
| |
| 2011-11-21 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb (Expand_Actuals): In Ada 2012, a function call |
| with out parameters may generate assignments to force constraint |
| checks. These checks must be properly placed in the code after the |
| declaration or statement that contains the call. |
| |
| 2011-11-21 Fedor Rybin <frybin@adacore.com> |
| |
| * gnat_ugn.texi: Adding info on current gnattest limitations an |
| support of -X option. |
| |
| 2011-11-21 Robert Dewar <dewar@adacore.com> |
| |
| * a-cfdlli.adb, a-cbdlli.adb: Minor reformatting. |
| |
| 2011-11-20 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch6.adb, exp_util.adb: Minor reformatting |
| |
| 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sinfo.ads (Reference): Document that it is OK to set |
| Is_Known_Non_Null on a temporary initialized to a N_Reference |
| node. |
| |
| 2011-11-20 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbdlli.adb, a-cfdlli.adb (Move): Set Last component to 0 |
| for Source list. |
| |
| 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): |
| Declare NEW_EXPR local variable and attach the |
| temporary to it. Set Is_Known_Non_Null on the temporary. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Likewise. |
| * exp_util.adb (Remove_Side_Effects): Set Is_Known_Non_Null on |
| the temporary created to hold the 'Reference of the expression, |
| if any. |
| * checks.adb (Install_Null_Excluding_Check): Bail out for the |
| Get_Current_Excep.all.all idiom generated by the expander. |
| |
| 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (struct language_function): Add GNAT_RET. |
| (f_gnat_ret): New macro. |
| (struct nrv_data): Add GNAT_RET. |
| (finalize_nrv_unc_r): New helper function. |
| (finalize_nrv): Add GNAT_RET parameter. Copy it into DATA. If the |
| function returns unconstrained, use finalize_nrv_unc_r as callback. |
| (return_value_ok_for_nrv_p): Test the alignment of RET_OBJ only if |
| RET_OBJ is non-null. |
| (Subprogram_Body_to_gnu): Pass GNAT_RET to finalize_nrv. |
| (gnat_to_gnu) <N_Return_Statement>: In the return-unconstrained case, |
| if optimization is enabled, record candidates for the Named Return |
| Value optimization. |
| |
| 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Subprogram_Body_to_gnu): Add comment. |
| (gnat_to_gnu) <N_Return_Statement>: Add 'else' to avoid doing a useless |
| test. Tweak default case. |
| <N_Goto_Statement>: Use better formatting. |
| * gcc-interface/utils2.c (maybe_wrap_malloc): Use INIT_EXPR instead of |
| MODIFY_EXPR to initialize the storage. |
| (build_allocator): Likewise. |
| |
| 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust |
| call to components_to_record. |
| (components_to_record): Add FIRST_FREE_POS parameter. For the variant |
| part, reuse enclosing union even if there is a representation clause |
| on the Unchecked_Union. If there is a variant part, compute the new |
| first free position, if any. Adjust call to self. Use a single field |
| directly only if it hasn't got a representation clause or is placed at |
| offset zero. Create the variant part at offset 0 if all the fields |
| down to this level have a rep clause. Do not chain the variant part |
| immediately and adjust downstream. |
| Do not test ALL_REP before moving the fields without rep clause to the |
| previous level. Call create_rep_part to create the REP part and force |
| a minimum size on it if necessary. Do not chain it immediately. |
| Create a fake REP part if there are fields without rep clause that need |
| to be laid out starting from FIRST_FREE_POS. |
| At the end, chain the REP part and then the variant part. |
| (create_rep_part): New function. |
| (get_rep_part): Minor tweak. |
| * gcc-interface/utils.c (tree_code_for_record_type): Minor tweak. |
| |
| 2011-11-18 Iain Sandoe <iains@gcc.gnu.org> |
| |
| PR target/50678 |
| * init.c (__gnat_error_handler) [Darwin]: Move workaround to the |
| bug filed as radar #10302855 from __gnat_error_handler to... |
| (__gnat_adjust_context_for_raise) [Darwin]: ...here. New function. |
| (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE) [Darwin]: Define. |
| |
| 2011-11-18 Tristan Gingold <gingold@adacore.com> |
| Iain Sandoe <iains@gcc.gnu.org> |
| |
| PR target/49992 |
| * mlib-tgt-specific-darwin.adb (Archive_Indexer_Options): Remove. |
| * gcc-interface/Makefile.in (darwin): Remove ranlib special-casing. |
| |
| 2011-11-12 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (stamp-gnatlib-$(RTSDIR)): Don't link |
| s-oscons.ads. |
| (OSCONS_CPP, OSCONS_EXTRACT): New. |
| (./bldtools/oscons/xoscons): New target. |
| ($(RTSDIR)/s-oscons.ads): Likewise. |
| (gnatlib): Depend on $(RTSDIR)/s-oscons.ads. |
| * gcc-interface/Make-lang.in (ada/s-oscons.ads) Remove as dependency. |
| * Make-generated.in: Remove machinery to generate xoscons and |
| ada/s-oscons.ads. |
| |
| 2011-11-10 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * fe.h (Serious_Errors_Detected): New macro. |
| * gcc-interface/gigi.h (build_atomic_load): Declare. |
| (build_atomic_store): Likewise. |
| * gcc-interface/trans.c (atomic_sync_required_p): New predicate. |
| (call_to_gnu): Add ATOMIC_SYNC parameter. Use local variable. |
| Build an atomic load for an In or In Out parameter if needed. |
| Build an atomic store for the assignment of an Out parameter if needed. |
| Build an atomic store to the target if ATOMIC_SYNC is true. |
| (present_in_lhs_or_actual_p): New predicate. |
| (gnat_to_gnu) <N_Identifier>: Build an atomic load if needed. |
| <N_Explicit_Dereference>: Likewise. |
| <N_Indexed_Component>: Likewise. |
| <N_Selected_Component>: Likewise. |
| <N_Assignment_Statement>: Adjust call to call_to_gnu. |
| Build an atomic store to the LHS if needed. |
| <N_Function_Call>: Adjust call to call_to_gnu. |
| * gcc-interface/utils2.c: Include toplev.h. |
| (resolve_atomic_size): New static function. |
| (build_atomic_load): New function. |
| (build_atomic_store): Likewise. |
| * gcc-interface/Make-lang.in (ada/utils2.o): Add toplev.h. |
| |
| 2011-11-07 Olivier Hainque <hainque@adacore.com> |
| |
| * sigtramp-ppcvxw.c: Add general comments. |
| (CFI_COMMON_REGS): Remove rule for r1, as in other unwinders. Add |
| rules for r2 to r13, plus CTR and XER. |
| (CFA_REG): New, register number used to hold the local CFA. |
| (CFI_DEF_CFA, SIGTRAMP_BODY): Use it. |
| Make that 15, not 14, with documentation. |
| (TCR): Undef before definition, preventing conflict with reg number in |
| VxWorks headers. |
| |
| 2011-11-07 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.ads, exp_alfa.adb, a-cohama.adb, a-cohama.ads, sem_ch4.adb, |
| aspects.ads, exp_ch8.adb, exp_ch8.ads, atree.ads: Minor reformatting. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-11-07 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb: A tagged type is a legal actual for an aliased |
| formal. |
| |
| 2011-11-07 Pascal Obry <obry@adacore.com> |
| |
| * g-socket.adb, g-socket.ads: Minor reformatting. |
| |
| 2011-11-07 Robert Dewar <dewar@adacore.com> |
| |
| * sem_res.adb (Resolve_Actuals): Minor error message improvement. |
| |
| 2011-11-07 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Add discussion of default mode handling of |
| source representation with no -gnatW option given, in particular |
| noting that NEL (next line) is not recognized in this context. |
| |
| 2011-11-07 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Note_Possible_Modification): In Alfa mode, |
| generate a reference for a modification even when the modification |
| does not come from source. |
| |
| 2011-11-07 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): For the "of" iterator form, |
| use the indexing attributes rather than the Element function, |
| to obtain variable references. |
| * sem_ch4.adb (Try_Container_Indexing): Code cleanup. Use |
| Find_Aspect rather than iterating over representation |
| items. Improve error message. |
| * a-cohama.adb, a-cohama.ads Update to latest RM, with two versions |
| of Reference functions. |
| |
| 2011-11-07 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Unique_Entity): For a parameter on a subprogram |
| body that has a corresponding parameter on the subprogram |
| declaration, define the unique entity as being the declaration |
| one. |
| |
| 2011-11-07 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Return_Type): In Ada 2012 mode, if the |
| return type of a function is the class-wide type of an incomplete |
| type T, T can be a Taft-amendment type and does not have to be |
| completed in the current private part. |
| |
| 2011-11-07 Ed Schonberg <schonberg@adacore.com> |
| |
| * aspects.ads (Inherited_Aspect): Map that indicates type aspects |
| that are inherited by default, and apply to the class-wide type |
| as well. |
| * aspects.adb (Find_Aspect): If the entity is class-wide and the |
| aspect is inherited, use the aspect of the specific type. |
| |
| 2011-11-07 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_alfa.adb: Remove with and use clause for |
| Exp_Ch8. Add with and use clause for Exp_Util. |
| Remove local constant Disable_Processing_Of_Renamings. |
| (Expand_Alfa_N_Object_Renaming_Declaration): The expansion of |
| object renamings has been reenabled. |
| (Expand_Possible_Renaming): |
| The expansion of identifier and expanded names has been |
| reenabled. Perform the substitutions only for entities that |
| denote an object. |
| * exp_ch8.ads, exp_ch8.adb (Evaluate_Name): Moved to Exp_Util. |
| * exp_util.adb (Evaluate_Name): Moved from Exp_Ch8. |
| (Remove_Side_Effects): Alphabetize local variables. Add a guard |
| to avoid the infinite expansion of an expression in Alfa mode. Add |
| processing for function calls in Alfa mode. |
| * exp_util.ads (Evaliate_Name): Moved from Exp_Ch8. |
| |
| 2011-11-07 Ed Schonberg <schonberg@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): If the entity is an access to |
| subprogram whose designated type is itself a subprogram type, |
| its own return type must be decorated with size information. |
| |
| 2011-11-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sprint.adb (Sprint_Node_Actual, case Qualified_Expression): |
| Avoid junk semicolon after argument of machine code Asm operand. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch11.adb (Generate_Push_Pop): Inhibit push/pop nodes in |
| CodePeer mode or if restriction No_Exception_Handlers is present. |
| * exp_ch6.adb (Expand_N_Subprogram_Body): (Inhibit push/pop |
| nodes in CodePeer mode or if restriction No_Exception_Handlers |
| is present. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * s-tassta.adb, atree.ads, errout.adb, sinput.adb: Minor reformatting. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Specification): The |
| specification is legal if it is a function that returns an |
| abstract type, if it comes from an attribute renaming of a stream |
| attribute of an abstract type. |
| |
| 2011-11-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_util.adb (Is_Possibly_Unaligned_Object): In case of indexed |
| components, check whether recursively check whether the prefix |
| denotes an unaligned object. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Debug): The argument of |
| the pragma is legal if it is an expanded name that denotes a |
| procedure that be can called without parameters. |
| |
| 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gnat_ugn.texi (Performance Considerations) <Vectorization |
| of loops>: New sub-section. <Other Optimization Switches>: |
| Minor tweak. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor reformatting. |
| |
| 2011-11-04 Matthew Heaney <heaney@adacore.com> |
| |
| * a-convec.adb, a-coinve.adb, a-cobove.adb (Merge): Raise PE |
| when Target and Source denote same non-empty object |
| * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Merge): Ditto |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_attr.adb: Minor reformatting. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Assign_Record): Do not generate a |
| discriminant assignment within an initialization proc if the |
| record is an unchecked union, as it can only come from the |
| initialization of an unchecked union component. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Minor reformatting. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * par-labl.adb (Rewrite_As_Loop): Generate info msg rather than |
| warning message. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb: Minor code reorganization (remove junk obsolete |
| var Save_Space). |
| |
| 2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_alfa.adb: Add local constant |
| Disable_Processing_Of_Renamings; |
| (Expand_Alfa_N_Object_Renaming_Declaration): Disable |
| the name evaluation of object renamings for now. |
| (Expand_Potential_Renaming): Do not perform the substitution |
| for now. |
| * exp_util.adb (Remove_Side_Effects): Remove processing for |
| functions with side effects in Alfa mode. |
| |
| 2011-11-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * bindgen.adb (Gen_Elab_Calls): In the case |
| of the AAMP target, set elaboration entities to 1 rather than |
| incrementing. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch10.adb (Install_Limited_With_Unit): To establish the |
| proper entities on the ancestors of a child unit that appear |
| in a limited_with clause, follow the unit links because the |
| units are not analyzed and scope information is incomplete. |
| |
| 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Selected_Component): Refine code |
| setting the Atomic_Sync_Required flag to detect one more case. |
| * exp_util.adb (Activate_Atomic_Synchronization): Refine code |
| setting the Atomic_Sync_Required flag to exclude more cases, |
| depending on the parent of the node to be examined. |
| |
| 2011-11-04 Bob Duff <duff@adacore.com> |
| |
| * g-excact.adb: Minor: use named notation. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb: Improve error messages for illegal iterators. |
| |
| 2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_alfa.adb: Add with and use clauses for Exp_Ch8 and |
| Sem_Util. |
| (Expand_Alfa): Alphabetize cases on first choice. Add |
| processing for object renaming declarations, identifiers and |
| expanded names. |
| (Expand_Alfa_N_In): Remove useless return. |
| (Expand_Alfa_N_Object_Renaming_Declaration): New routine. |
| (Expand_Potential_Renaming): New routine. |
| * exp_ch8.adb (Evaluate_Name): Moved to the top level. |
| (Expand_N_Object_Declaration): Alphabetize local variables. Move |
| Evaluate_Name out to the top level. |
| * exp_ch8.ads (Evaluate_Name): Moved from body to package spec. |
| * exp_util.adb (Remove_Side_Effects): Add processing for |
| functions with side effects in Alfa mode. |
| |
| 2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * gnat_rm.texi: Add entries for |
| restrictions No_Relative_Delay, No_Requeue_Statements and |
| No_Stream_Optimizations. |
| |
| 2011-11-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb: Set type of entity in prefixed call, for |
| completeness in a generic context. |
| |
| 2011-11-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb: Minor refactoring (renaming of a parameter). |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * atree.ads: Minor reformatting. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * checks.adb (Atomic_Synchronization_Disabled): Check -gnatd.d |
| and -gnatd.e here |
| * exp_ch2.adb (Expand_Entity_Reference): Use |
| Activate_Atomic_Synchronization |
| * exp_ch4.adb (Expand_N_Explicit_Dereference): Use |
| Activate_Atomic_Synchronization (Expand_N_Indexed_Compoonent): |
| Activate_Atomic_Synchronization (Expand_N_Selected_Component): |
| Use Activate_Atomic_Synchronization |
| * exp_util.ads, exp_util.adb (Activate_Atomic_Synchronization): New |
| procedure. |
| * sinfo.ads, sinfo.adb (Atomic_Sync_Required): Can now apply to |
| N_Selected_Component node |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb, atree.ads, prj-env.adb, prj-env.ads: Minor reformatting. |
| |
| 2011-11-04 Yannick Moy <moy@adacore.com> |
| |
| * atree.adb, atree.ads (Set_Original_Node): New set procedure. |
| * sem_ch13.adb (Analyze_Aspect_Specifications/Pre_Post_Aspects): |
| In ASIS mode, no splitting of aspects between conjuncts. |
| (Analyze_Aspect_Specifications/Aspect_Test_Case): Make pragma |
| expressions refer to the original aspect expressions through |
| the Original_Node link. This is used in semantic analysis for |
| ASIS mode, so that the original expression also gets analyzed. |
| * sem_prag.adb (Preanalyze_TC_Args, |
| Check_Precondition_Postcondition, |
| Analyze_Pragma/Pragma_Test_Case): In ASIS mode, for a pragma |
| generated from a source aspect, also analyze the original aspect |
| expression. |
| (Check_Expr_Is_Static_Expression): New procedure |
| similar to existing procedure Check_Arg_Is_Static_Expression, |
| except called on expression inside pragma. |
| |
| 2011-11-04 Tristan Gingold <gingold@adacore.com> |
| |
| * prj-env.adb, prj-env.ads (Find_Name_In_Path): New function, from |
| Find_Project.Try_Path_Name. |
| (Find_Project): Use Find_Name_In_Path to implement Try_Path_Name. |
| |
| 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * s-atocou.ads (Atomic_Counter): Remove redundant pragma Volatile. |
| |
| 2011-11-04 Pascal Obry <obry@adacore.com> |
| |
| * projects.texi: Add short description for qualifiers aggregate |
| and aggregate library. |
| |
| 2011-11-04 Matthew Heaney <heaney@adacore.com> |
| |
| * Makefile.rtl, impunit.adb: Added a-cogeso.ad[sb] |
| * a-cgaaso.adb: Replaced implementation with instantiation |
| of Generic_Sort. |
| * a-cogeso.ad[sb] This is the new Ada 2012 unit |
| Ada.Containers.Generic_Sort |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch2.adb (Expand_Entity_Reference): Do not set |
| Atomic_Sync_Required for the case of a prefix of an attribute. |
| * exp_ch4.adb (Expand_N_Explicit_Dereference): May require |
| atomic synchronization |
| (Expand_N_Indexed_Component): Ditto. |
| (Expand_B_Selected_Component): Ditto. |
| * sem_prag.adb (Process_Suppress_Unsuppress): |
| Disable/Enable_Atomic_Synchronization can now occur for array |
| types with pragma Atomic_Components. |
| * sinfo.ads, sinfo.adb (Atomic_Sync_Required): Can now occur on |
| N_Explicit_Dereference nodes and on N_Indexed_Component nodes. |
| |
| 2011-11-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * gnat_ugn.texi: Editorial corrections for gnattest section. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb: Minor reformatting. |
| * gnat_rm.texi: Update documentation for pragma Warnings (Off, |
| "***") usage. |
| * exp_ch2.adb (Expand_Entity_Reference): Only set |
| Atomic_Sync_Required on entities that are variables. Doesn't |
| make any sense on anything else. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch2.adb (Expand_Entity_Reference): Extend handling of |
| atomic sync to type case. |
| * sem_prag.adb (Process_Suppress_Unsuppress): Atomic Sync can |
| apply to types. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_warn.adb (Warn_On_Useless_Assignment): More accurate test |
| for call vs assign. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb: Detect more cases of Long_Float inconsistencies at |
| compile time. |
| |
| 2011-11-04 Matthew Heaney <heaney@adacore.com> |
| |
| * Makefile.rtl, impunit.adb: Added a-sfecin.ads, |
| * a-sfhcin.ads, a-sflcin.ads, a-sbecin.ad[sb], a-sbhcin.ad[sb], |
| a-sblcin.ad[sb], a-suecin.ad[sb], a-suhcin.ad[sb], a-sulcin.ad[sb] |
| * a-sfecin.ads, a-sfhcin.ads, a-sflcin.ads, a-sbecin.ad[sb], |
| a-sbhcin.ad[sb], a-sblcin.ad[sb], a-suecin.ad[sb], a-suhcin.ad[sb], |
| a-sulcin.ad[sb]: New files. |
| |
| 2011-11-04 Geert Bosch <bosch@adacore.com> |
| |
| * i-forbla-unimplemented.ads, s-gecola.adb, s-gecola.ads, |
| s-gerebl.adb, s-gerebl.ads, i-forbla.adb, i-forbla.ads, |
| i-forlap.ads, i-forbla-darwin.adb, s-gecobl.adb, s-gecobl.ads, |
| s-gerela.adb, s-gerela.ads: Remove partial interface to BLAS/LAPACK. |
| * gcc-interface/Makefile.in: Remove libgnala and related objects. |
| |
| 2011-11-04 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cdlili.ad[sb], a-cidlli.ad[sb], a-coorse.ad[sb], a-ciorse.ad[sb], |
| a-coorma.ad[sb], a-ciorma.ad[sb], a-coormu.ad[sb], a-ciormu.ad[sb], |
| a-cohama.ad[sb], a-cihama.ad[sb], a-cohase.ad[sb], a-cihase.ad[sb], |
| a-convec.ad[sb], a-coinve.ad[sb] (Assign, Copy): New operations |
| added to package. |
| |
| 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Do not assert |
| that the type of the parameters isn't dummy in type_annotate_only mode. |
| |
| 2011-11-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch12.adb: Minor reformatting |
| |
| 2011-11-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * bindgen.adb (Gen_Elab_Calls): In the case of the AAMP target, |
| initialize elaboration entities to zero when specs are processed. |
| |
| 2011-10-28 Iain Sandoe <iains@gcc.gnu.org> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/50678 |
| * init.c (__gnat_error_handler) [Darwin]: Apply a work-around to the |
| bug filed as radar #10302855 (inconsistent unwind data for sigtramp). |
| |
| 2011-10-28 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/50842 |
| * gcc-interface/Makefile.in (SYMDEPS): Delete. |
| (LIBICONV): New variable. |
| (LIBICONV_DEP): Likewise. |
| (LIBS): Add $(LIBICONV). |
| (LIBDEPS): Add $(LIBICONV_DEP). |
| (EXTRA_GNATTOOLS_OBJS): Merge into... |
| (TOOLS_LIBS): ...this. Add $(LIBICONV). |
| |
| 2011-10-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (elaborate_expression_1): Add EXPR_PUBLIC_P local |
| variable. Always create the elaboration variable, if any, as constant. |
| |
| 2011-10-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Try to |
| make a packable type for fields of union types as well. |
| <is_type>: Use RECORD_OR_UNION_TYPE_P predicate. |
| (gnat_to_gnu_component_type): Try to make a packable type for fields |
| of union types as well. |
| (make_packable_type): Use RECORD_OR_UNION_TYPE_P predicate. |
| (maybe_pad_type): Try to make a packable type for fields of union types |
| as well. |
| (gnat_to_gnu_field): Likewise. |
| (is_variable_size): Use RECORD_OR_UNION_TYPE_P predicate. |
| (set_rm_size): Likewise. |
| (rm_size): Likewise. |
| * gcc-interface/misc.c (gnat_type_max_size): Likewise. |
| * gcc-interface/trans.c (add_decl_expr): Likewise. |
| * gcc-interface/utils.c (finish_record_type): Likewise. |
| * gcc-interface/utils2.c (build_simple_component_ref): Likewise. |
| |
| 2011-10-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_field): Always check components |
| declared as atomic. Move around conditionally executed code. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * sem.adb (Initialize): Fix bug that blew up if called a second time. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * tb-alvxw.c, tracebak.c, expect.c, initflt.c, tb-alvms.c, |
| tb-ivms.c, tb-gcc.c: Update headers to GPL 3. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Debug): Give proper pragma |
| name in error msg. |
| |
| 2011-10-24 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * gnat_rm.texi: Add an entry for restriction No_Finalization. |
| |
| 2011-10-24 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Insert_Freeze_Node_For_Instance): If the |
| current instance is within the one that contains the generic, |
| the freeze node for the current one must appear in the current |
| declarative part. Ditto if the current instance is within another |
| package instance. In both of these cases the freeze node of the |
| previous instance is not relevant. |
| |
| 2011-10-24 Gary Dismukes <dismukes@adacore.com> |
| |
| * switch-m.adb (Normalize_Compiler_Switches): Add recognition |
| of AAMP-specific switches -univ and -aamp_target. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * a-tienau.adb (Put): Deal properly with limited line length. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * sem_warn.adb, sem_ch12.adb: Minor reformatting. |
| |
| 2011-10-24 Tristan Gingold <gingold@adacore.com> |
| |
| * gcc-interface/Makefile.in: Use GNU ld switches to generate map files |
| on AIX. |
| |
| 2011-10-24 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Earlier): make available globally. If both |
| nodes have the same sloc, the freeze node that does not come |
| from source is the later one. |
| (True_Parent): Make available globally. |
| (Previous_Instance): Subsidiary of |
| Insert_Freeze_Node_For_Instance, to check whether the generic |
| parent of the current instance is declared within a previous |
| instance in the same unit or declarative part, in which case the |
| freeze nodes of both instances must appear in order to prevent |
| elaboration problems in gigi. |
| * sem_ch12.adb (Insert_Freeze_Node_For_Instance): A stub is a |
| freeze point, and the freeze node of a preceding instantiation |
| must be inserted before it. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * checks.ads, checks.adb: Add handling of Synchronization_Check |
| * debug.adb: Add doc for -gnatd.d and -gnatd.e (disable/enable |
| atomic sync). |
| * exp_ch2.adb (Expand_Entity_Reference): Set Atomic_Sync_Required |
| flag Minor code reorganization. |
| * opt.ads (Warn_On_Atomic_Synchronization): New switch. |
| * par-prag.adb: Add dummy entries for pragma |
| Disable/Enable_Atomic_Synchronization. |
| * sem_prag.adb (Process_Suppress_Unsuppress): Handle |
| case of Atomic_Synchronization specially (not suppressed |
| by All_Checks, cannot be set from Source). |
| (Pragma Disable/Enable_Atomic_Synchronization): Add processing. |
| * sinfo.ads, sinfo.adb: Add Atomic_Sync_Required flag |
| * snames.ads-tmpl: Add entry for Atomic_Synchronization Add |
| entry for pragma Disable/Enable_Atomic_Synchronization |
| * switch-c.adb: The -gnatp switch does not disable |
| Atomic_Synchronization Add -gnatep switch to disable |
| Atomic_Synchronization. |
| * types.ads: Add entry for Synchronization_Check |
| * usage.adb: Add line for -gnated switch |
| * warnsw.adb: Settings for Warn_On_Atomic_Synchronization |
| |
| 2011-10-24 Geert Bosch <bosch@adacore.com> |
| |
| * s-gearop.adb (Back_Substitute): Avoid overflow if matrix bounds start |
| at Integer'First. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch12.adb, s-gearop.adb: Minor reformatting. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * warnsw.adb: Add some missing warnings to Set_GNAT_Mode_Warnings. |
| * warnsw.ads: Add comments to Set_GNAT_Mode_Warnings. |
| |
| 2011-10-24 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb (Process_Expression_Variable_Decl): No special |
| handling for Project_Path unless it is an attribute. |
| |
| 2011-10-24 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch12.adb (Check_Hidden_Primitives): New subprogram. |
| (Install_Hidden_Primitives): New subprogram. |
| (Restore_Hidden_Primitives): New subprogram. |
| (Analyze_Formal_Package_Declaration, |
| Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): |
| Invoke Check_Hidden_Primitives after every call to |
| Analyze_Associations, and invoke Restore_Hidden_Primitives to |
| restore their visibility after processing the instantiation. |
| (Instantiate_Package_Body): Install visible primitives before |
| analyzing the instantiation and uninstall them to restore their |
| visibility when the instantiation has been analyzed. |
| * sem_util.ads, sem_util.adb (Add_Suffix): New subprogram |
| (Remove_Suffix): New subprogram |
| * sem_ch3.adb (Derive_Subprogram): When handling |
| a derived subprogram for the instantiation of a formal derived |
| tagged type, inherit the dispatching attributes from the actual |
| subprogram (not from the parent type). |
| |
| 2011-10-24 Vasiliy Fofanov <fofanov@adacore.com> |
| |
| * gnat_ugn.texi: Document explicit use of XDECGNAT library. |
| |
| 2011-10-24 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Build_Assignment): Add local constant N_Loc and |
| update its uses. |
| (Build_Discriminant_Assignments): Add local variable D_Loc and update |
| its uses. |
| (Build_Init_Statements): Add local variables Comp_Loc, Decl_Loc and |
| Var_Loc and update their uses. |
| (Build_Record_Init_Proc): Code reformatting. |
| (Increment_Counter): Add formal parameter Loc. |
| (Make_Counter): Add formal parameter Loc. |
| |
| 2011-10-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_disp.adb (Covers_Some_Interface): Fix typo. |
| |
| 2011-10-24 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cuprqu.adb, a-cbprqu.adb (Dequeue_Only_High_Priority): Fix sense |
| of predicate. |
| |
| 2011-10-24 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications/Aspect_Test_Case): |
| Translate arguments in positional notation into pragma argument |
| association arguments for the generated pragma. |
| |
| 2011-10-24 Arnaud Charlet <charlet@adacore.com> |
| |
| * exp_ch5.adb: Fix minor typo. |
| |
| 2011-10-24 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Is_Visible_Component): Refine predicate for |
| the case of a component reference in an instance body, when the |
| enclosing type is private. |
| |
| 2011-10-24 Sergey Rybin <rybin@adacore.com frybin> |
| |
| * gnat_ugn.texi: For gnatelim, move the note about using the GNAT |
| driver for getting the project support into gnatelim section. |
| |
| 2011-10-24 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor correction to documentation on address clause. |
| |
| 2011-10-24 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-finmas.adb (Attach): Synchronize and call the unprotected version. |
| (Attach_Unprotected): New routine. |
| (Delete_Finalize_Address): Removed. |
| (Delete_Finalize_Address_Unprotected): New routine. |
| (Detach): Synchronize and call the unprotected version. |
| (Detach_Unprotected): Remove locking. |
| (Finalize): Add various comment on synchronization. Lock the critical |
| region and call the unprotected versions of routines. |
| (Finalize_Address): Removed. |
| (Finalize_Address_Unprotected): New routine. |
| (Set_Finalize_Address): Synchronize and call |
| the unprotected version. |
| (Set_Finalize_Address_Unprotected): New routine. |
| (Set_Heterogeneous_Finalize_Address): Removed. |
| (Set_Heterogeneous_Finalize_Address_Unprotected): New routine. |
| (Set_Is_Heterogeneous): Add comment on synchronization and |
| locking. |
| * s-finmas.ads: Flag Finalization_Started is no longer atomic |
| because synchronization uses task locking / unlocking. |
| (Attach): Add comment on usage. |
| (Attach_Unprotected): New routine. |
| (Delete_Finalize_Address): Renamed to |
| Delete_Finalize_Address_Unprotected. |
| (Detach): Add comment on usage. |
| (Detach_Unprotected): New routine. |
| (Finalize_Address): Renamed to Finalize_Address_Unprotected. |
| (Set_Finalize_Address): Add comment on usage. |
| (Set_Finalize_Address_Unprotected): New routine. |
| (Set_Heterogeneous_Finalize_Address): Renamed to |
| Set_Heterogeneous_Finalize_Address_Unprotected. |
| * s-stposu.adb (Allocate_Any_Controlled): Add local variable |
| Allocation_Locked. Add various comments on synchronization. Lock |
| the critical region and call the unprotected version of |
| routines. |
| (Deallocate_Any_Controlled): Add various comments on |
| synchronization. Lock the critical region and call the unprotected |
| version of routines. |
| |
| 2011-10-24 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Set_Fixed_Range): The bounds of a fixed point type |
| are universal and must carry the corresponding type. |
| * sem_eval.adb (Check_Non_Static_Context): If the type of the |
| expression is universal real, as may be the case for a fixed point |
| expression with constant operands in the context of a conversion, |
| there is nothing to check. |
| * s-finmas.adb: Minor reformatting |
| |
| 2011-10-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (create_concat_name): Add explicit cast. |
| |
| 2011-10-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Make-lang.in (GNATLIBFLAGS, GNATLIBCFLAGS, THREAD_KIND, |
| TRACE): Reintroduce. |
| (ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o, |
| ada/initialize.o, ada/raise.o): Reintroduce explicit compilation rules. |
| |
| 2011-10-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (lhs_or_actual_p): New predicate. |
| (unchecked_conversion_nop): Use it. |
| (gnat_to_gnu): Likewise. |
| |
| 2011-10-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * back_end.adb (Call_Back_End): Pass the maximum logical line number |
| instead of the maximum physical line number to gigi. |
| * gcc-interface/trans.c (Sloc_to_locus): Cope with line zero. |
| |
| 2011-10-16 Tom Tromey <tromey@redhat.com> |
| Dodji Seketeli <dodji@redhat.com> |
| |
| * gcc-interface/trans.c (gigi, Sloc_to_locus): Adjust to use the new |
| public ordinary map interface. |
| |
| 2011-10-16 Tristan Gingold <gingold@adacore.com> |
| |
| * link.c (_AIX): Add support for GNU ld. |
| |
| 2011-10-16 Fedor Rybin <frybin@adacore.com> |
| |
| * gnat_ugn.texi: Fixing gnattest example names in the doc. |
| Adding explanation to additional tests usage. |
| |
| 2011-10-16 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch6.adb, sem_ch6.adb: Minor reformatting. |
| |
| 2011-10-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * a-convec.adb: Fix minor inconsistencies. |
| |
| 2011-10-16 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cusyqu.ads, a-cbsyqu.ads, a-cuprqu.ads, a-cbprqu.ads (package |
| Implementation): Specify pragma Implementation_Defined. |
| |
| 2011-10-15 Nicolas Roche <roche@adacore.com> |
| |
| * gcc-interface/lang-specs.h: Ensure -mrtp switch is passed when using |
| either rtp-smp or ravenscar-cert-rtp runtimes. |
| |
| 2011-10-15 Bob Duff <duff@adacore.com> |
| |
| * exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call): |
| Do not create a pool formal on unless RE_Root_Storage_Pool_Ptr |
| is available. |
| (Expand_N_Extended_Return_Statement): Do not create a renaming of the |
| build-in-place pool parameter unless RE_Root_Storage_Pool_Ptr is |
| available. |
| (Make_Build_In_Place_Call_In_Allocator): Add the user-defined |
| pool only if RE_Root_Storage_Pool_Ptr is available. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Do not add a |
| pool actual unless RE_Root_Storage_Pool_Ptr is available. |
| * sem_ch6.adb (Create_Extra_Formals): Add build-in-place pool |
| formal only if RE_Root_Storage_Pool_Ptr is available. |
| |
| 2011-10-15 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cusyqu.ads, a-cbsyqu.ads, a-cuprqu.ads, a-cbprqu.ads (Queue |
| type): Specify Priority aspect for protected type. |
| |
| 2011-10-14 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_disp.adb (Check_Premature_Freezing): If an untagged type |
| is a generic actual, it is a subtype of a type that was frozen |
| by the instantiation, and even if not marked frozen it does not |
| affect the construction of the dispatch table. |
| |
| 2011-10-14 Robert Dewar <dewar@adacore.com> |
| |
| * make.adb, mlib-utl.adb, sem_util.adb, sem_ch4.adb: Minor code |
| reformatting. |
| * s-rident.ads: Add missing Compiler_Unit pragma. |
| |
| 2011-10-14 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_res.adb: Minor reformatting. |
| |
| 2011-10-14 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): |
| Code and comment reformatting. Use BIP_Task_Master |
| when creating a _master. |
| (BIP_Formal_Suffix): Code reformatting. Correct the case for |
| BIP_Task_Master. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Use |
| BIP_Task_Master when creating a reference to the enclosing |
| function's _master formal. |
| (Move_Activation_Chain): Use BIP_Task_Master when creating a reference |
| to the _master. |
| * exp_ch6.ads: Change BIP_Master to BIP_Task_Master. |
| (Needs_BIP_Finalization_Master): Alphabetized. |
| * sem_ch6.adb (Create_Extra_Formals): Update the usage of |
| BIP_Task_Master. |
| |
| 2011-10-14 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch6.adb (P_Return_Object_Declaration): In Ada 2012 mode, |
| reject an aliased keyword on the object declaration of an extended |
| return statement. In older versions of the language indicate |
| that this is illegal in the standard. |
| |
| 2011-10-14 Pascal Obry <obry@adacore.com> |
| |
| * sem_util.adb, sem_ch4.adb: Minor reformatting. |
| |
| 2011-10-14 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch13.adb: Recognize properly procedure calls that are |
| transformed into code statements. |
| |
| 2011-10-14 Vincent Celier <celier@adacore.com> |
| |
| * projects.texi: Minor fix in project example. |
| |
| 2011-10-14 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb: Return objects are aliased if their type is |
| immutably limited as per AI05-0053. |
| |
| 2011-10-14 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_And): Remove Short_Circuit_And_Or |
| expansion code (moved to sem_res) (Expand_N_Op_Or): Remove |
| Short_Circuit_And_Or expansion code (moved to sem_res). |
| * sem_res.adb (Resolve_Logical_Op): Add code to rewrite Boolean |
| "and" and "or" operators as short-circuit "and then" and "or |
| else", when pragma Short_Circuit_And_Or is active. |
| |
| 2011-10-13 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch9.adb, sem_util.adb, sem_util.ads, exp_ch6.adb, sem_ch4.adb, |
| sem_ch6.adb, exp_ch3.adb: Minor reformatting. |
| |
| 2011-10-13 Arnaud Charlet <charlet@adacore.com> |
| |
| * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add a-ngcoar.o. |
| |
| 2011-10-13 Jerome Guitton <guitton@adacore.com> |
| |
| * sysdep.c (__gnat_get_task_options): Re-enable VX_SPE_TASK on vThreads |
| |
| 2011-10-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * a-convec.ads (Cursor): Minor reformatting. |
| * a-convec.adb (Next): Fix minor inconsistencies. |
| (Previous): Likewise. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.ads, sem_util.adb (Available_Full_View_Of_Component): |
| New predicate to determine whether some operations on an array |
| type are available when the full view of its component may differ |
| from the view of the point of the array declaration. |
| * sem_ch4.adb (Find_Equality_Types): Use |
| Available_Full_View_Of_Component. |
| * sem_type.adb (Valid_Boolean_Arg, Valid_Comparison_Arg): Ditto |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch9.adb: Analyze aspects while discriminants of protected |
| type are visible. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * Makefile.rtl (GNATRTL_TASKING_OBJECTS): Add |
| a-nlcoar.o, a-nllcar.o, a-nucoar.o and s-gearop.o, as these no |
| longer depend on an external library. |
| * gcc-interface/Makefile.in (GNATRTL_LINEARALGEBRA_OBJS): Remove |
| a-nlcoar.o, a-nllcar.o, a-nucoar.o and s-gearop.o. |
| Update dependencies. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-10-13 Cyrille Comar <comar@adacore.com> |
| |
| * gnat_ugn.texi: Minor editing. |
| |
| 2011-10-13 Vincent Celier <celier@adacore.com> |
| |
| * projects.texi: Add documentation on packages and attributes |
| that are inherited from a project being extended into the |
| extended project. |
| |
| 2011-10-13 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Build_Master): Rewritten. |
| (Expand_N_Full_Type_Declaration): Reformat the declarative |
| region. Update the call to Build_Master_Renaming. |
| (Expand_Previous_Access_Type): Rewritten. |
| * exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): |
| Add local constant Result_Subt and update related usage. |
| (Expand_N_Extended_Return_Statement): Add local constant |
| Result_Subt and update related usage. |
| * exp_ch9.adb (Build_Activation_Chain): Rewritten to use the |
| new context detection mechanism. |
| (Build_Class_Wide_Master): |
| Use Insert_Action to add the renaming into the tree. |
| (Build_Master_Entity): Rewritten to use the new context detection |
| mechanism. |
| (Build_Master_Renaming): Add formal parameter Ins_Nod |
| and related usage. Use Insert_Action to add the renaming into the |
| tree. |
| (Find_Enclosing_Context): New subsidiary routine. Rather |
| than relying on enclosing scopes, this routine looks at the |
| tree structure to figure out the proper context for a _master |
| or a _chain. This approach eliminates the issues with transient |
| scopes which have not been converted into blocks. |
| * exp_ch9.ads (Build_Master_Entity): Change parameter profile |
| to better reflect the new usage. Update the related comment. |
| (Build_Master_Renaming): Add formal parameter Ins_Nod. Update |
| the comment on usage. |
| * sem_ch3.adb (Access_Definition): Update the calls to |
| Build_Master_Entity and Build_Master_Renaming. |
| * sem_ch6.adb (Create_Extra_Formals): Add local variable |
| Full_Subt. Code reformatting. |
| * sem_util.adb (Is_Iterator): Alphabetized. |
| (Is_LHS): Alphabetized. |
| (Is_Limited_Class_Wide_Type): New routine. |
| * sem_util.ads (Is_Limited_Class_Wide_Type): New routine. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * a-ngrear.adb (Solve): Make generic and move to |
| System.Generic_Array_Operations. |
| * s-gearop.ads (Matrix_Vector_Solution, Matrix_Matrix_Solution): |
| New generic solvers to compute a vector resp. matrix Y such |
| that A * Y = X, approximately. |
| * s-gearop.adb (Matrix_Vector_Solution, Matrix_Matrix_Solution): |
| Implement using Forward_Eliminate and Back_Substitute |
| * a-ngcoar.adb: Reimplement in pure Ada to remove dependencies |
| on BLAS and LAPACK. |
| * a-ngcoar.ads ("abs"): Fix return type to be real. |
| |
| 2011-10-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/50589 |
| * s-linux-alpha.ads: Do not "with" Interfaces.C. |
| * s-linux-sparc.ads: Likewise. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * s-gearop.ads (Forward_Eliminate): Add "abs" formal function |
| returning a Real. |
| * s-gearop.adb (Forward_Eliminate): Remove local "abs" function |
| and use formal. |
| * a-ngrear.adb (Forward_Eliminate): Adjust instantiation for |
| new profile. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * a-ngrear.adb, s-gearop.adb, s-gearop.ads (Sqrt): Make generic and |
| move to System.Generic_Array_Operations. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * a-ngrear.adb ("abs"): Adjust for modified L2_Norm generic |
| * s-gearop.ads (L2_Norm): Change profile to be suitable for |
| Complex_Vector |
| * s-gearop.adb (L2_Norm): Reimplement using direct definition, |
| not inner product |
| |
| 2011-10-13 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sem_ch3.adb, impunit.adb, impunit.ads, sem_type.adb, |
| prj-proc.adb, exp_ch9.adb, s-regpat.adb, sem_ch10.adb, sem_prag.adb, |
| sem_ch12.adb, freeze.adb, sem_attr.adb, sem_attr.ads, gnatlink.adb, |
| par-ch6.adb, exp_ch6.adb, sem_ch4.adb, sem_ch6.adb, sem_ch8.adb, |
| par-util.adb, sem_ch13.adb, lib-xref.adb, g-trasym.adb, g-trasym.ads, |
| exp_aggr.adb, s-taprop-posix.adb: Minor reformatting. |
| |
| 2011-10-13 Geert Bosch <bosch@adacore.com> |
| |
| * s-gearop.adb: Minor comment additions. |
| |
| 2011-10-13 Fedor Rybin <frybin@adacore.com> |
| |
| * gnat_ugn.texi: Add gnattest section. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * freeze.adb: Do not create body of renaming if declaration has |
| errors. |
| |
| 2011-10-13 Olivier Hainque <hainque@adacore.com> |
| |
| * init.c (__gnat_error_handler - vxworks case): Restrict sigtramp calls |
| further, to the ppc+kernel case only. |
| |
| 2011-10-13 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Allocator): Comment reformatting. |
| * exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call): |
| Do not create a pool formal on .NET/JVM. |
| (Expand_N_Extended_Return_Statement): Alphabetize local |
| variables. Do not create a renaming of the build-in-place pool |
| parameter on .NET/JVM. (Make_Build_In_Place_Call_In_Allocator): |
| Add the user-defined pool only on non-VM targets. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Alphabetize |
| local variables. Do not add a pool actual on .NET/JVM. |
| * sem_ch6.adb: Add with and use clause for Targparm. |
| (Create_Extra_Formals): Add build-in-place pool formal only on |
| non-VM targets. |
| * rtsfind.ads: Alphabetize entries. |
| |
| 2011-10-13 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_ugn.texi: Minor correction. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb: Minor error message improvement. |
| |
| 2011-10-13 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbprqu.adb, a-ciorma.adb, exp_ch3.adb: Minor reformatting. |
| |
| 2011-10-13 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Loop_Statement): For the transformation |
| of a for loop for an enumeration type with an enumeration rep |
| clause, which involves moving the original loop parameter into |
| a nested block, the loop parameter's entity must be removed from |
| the entity list of the loop scope. |
| |
| 2011-10-13 Bob Duff <duff@adacore.com> |
| |
| * exp_ch6.ads (BIP_Storage_Pool): New "extra implicit parameter" |
| that gets passed in the same cases where BIP_Alloc_Form is passed |
| (caller-unknown-size results). BIP_Storage_Pool is used when |
| BIP_Alloc_Form = User_Storage_Pool. In that case, a pointer |
| to the user-defined storage pool is passed at the call site, |
| and this pool is used in callee to allocate the result. |
| * exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call): New |
| version of Add_Alloc_Form_Actual_To_Build_In_Place_Call. Passes |
| the additional BIP_Storage_Pool actual. |
| (Expand_N_Extended_Return_Statement): Allocate the function |
| result using the user-defined storage pool, if BIP_Alloc_Form = |
| User_Storage_Pool. |
| * sem_ch6.adb: Add the "extra formal" for BIP_Storage_Pool. |
| * exp_ch4.adb: Don't overwrite storage pool set by |
| Expand_N_Extended_Return_Statement. |
| * s-stopoo.ads, rtsfind.ads (Root_Storage_Pool_Ptr): New type, |
| for use in build-in-place function calls within allocators |
| where the access type has a user-defined storage pool. |
| |
| 2011-10-13 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_ugn.texi, vms_data.ads: Add an option to control enumeration |
| literal casing. |
| |
| 2011-10-13 Nicolas Roche <roche@adacore.com> |
| |
| * gnatlink.adb: Ensure that -mrtp is passed when runtime name ends |
| with 'rtp'. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Unchecked_Union): Take into |
| account that an unchecked union type can be limited. |
| |
| 2011-10-13 Olivier Hainque <hainque@adacore.com> |
| |
| * init.c (__gnat_error_handler) <VxWorks version>: Add comments on |
| the use of the signal trampoline for PPC in the sjlj case as well. |
| Add legitimate casts, preventing compile time warnings on the |
| (sighandler *) profile. |
| |
| 2011-10-13 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggr_Expr): Always perform semantic analysis |
| in Alfa mode. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (OK_For_Limited_Init_In_05): Conditional and case |
| expressions are legal limited return values if each one of their |
| dependent expressions are legal. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Procedure_Call_Statement): In Ada 2012 mode, |
| if the prefix of the call is a qualified expression, rewrite as |
| a code statement. |
| * sem_ch13.adb (Analyze_Code_Statement): In Ada 2012 mode, the |
| code statement is legal if it is a rewriting of a procedure call. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_aggr.adb (Flatten): If a component association has a box, |
| assume that aggregate is not static. |
| (Safe_Aggregate): If a component association in a non-limited |
| aggregate has a box, assume that it cannot be expanded in place. |
| |
| 2011-10-13 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Get_Or_Create_Configuration_File): Call |
| Process_Project_Tree_Phase_1 with Packages_To_Check. |
| (Process_Project_And_Apply_Config): Ditto |
| * prj-part.ads, prj-part.adb, prj-pars.ads, prj-pars.adb (Parse): |
| Remove default for argument Packages_To_Check. |
| * prj-proc.adb (Recursive_Process): New argument |
| Packages_To_Check. |
| (Process): Ditto. |
| (Process_Project_Tree_Phase_1): Ditto. |
| (Recursive_Project.Process_Aggregated_Projects): Call |
| Prj.Part.Parse and Process_Project_Tree_Phase_1 with |
| Packages_To_Check. |
| * prj-proc.ads (Process): New argument Packages_To_Check |
| (Process_Project_Tree_Phase_1): Ditto |
| |
| 2011-10-13 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in: Fix typo. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Formal_{Floating_Type, |
| Signed_Integer_Type, Decimal_Fixed_Point_Type, Discrete_Type}): |
| Use sloc of defining identifier of farmal type declaration, |
| as sloc of generated internal entity, to prevent misplaced |
| references in ali. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_intr.adb (Check_Intrinsic_Operator): Check that type |
| is fully defined before checking that it is a numeric type. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Record_Aggregate): If a component |
| association for component X has a box, then X is covered in the |
| aggregate even if there is not default value for X in the type |
| declaration, and X has to be default-initialized. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb (Check_Enum_Image, Analyze_Attribute case 'Value): Mark |
| literals as referenced only if reference is in current source unit. |
| |
| 2011-10-13 Matthew Heaney <heaney@adacore.com> |
| |
| * a-csquin.ads (Enque, Dequeue): Mark interface operations as entries. |
| |
| 2011-10-13 Olivier Hainque <hainque@adacore.com> |
| |
| * sigtramp.h: New file. Prototype and spec of the signal |
| trampoline to be called by an established handler to provide |
| dwarf call frame info before the real signal processing code. |
| * sigtramp-ppcvxw.c: New file. Implementation of the signal |
| trampoline for ppc-vxworks. |
| * init.c (vxworks section): Use it for ppc. |
| |
| 2011-10-13 Thomas Quinot <quinot@adacore.com> |
| |
| * par-ch2.adb, par.adb, par-util.adb, par-ch3.adb |
| (Check_Future_Identifier): New subprogram, |
| factors duplicated code from Par.Ch2.P_Identifier and |
| Par.Ch3.P_Defining_Identifier. |
| |
| 2011-10-13 Thomas Quinot <quinot@adacore.com> |
| |
| * s-taprop-posix.adb (Initialize): Always raise Storage_Error |
| if we fail to initialize CV attributes or CV. |
| |
| 2011-10-13 Thomas Quinot <quinot@adacore.com> |
| |
| * s-tasren.adb (Timed_Selective_Wait, case |
| Accept_Alternative_Selected): Use Defer_Abort_Nestable, since |
| we know abortion is already deferred. |
| |
| 2011-10-13 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Build_Class_Wide_Master): Moved to exp_ch9. |
| (Build_Master_Renaming (function)): Removed. |
| (Build_Master_Renaming (procedure)): Moved to exp_ch9. |
| (Expand_Full_Type_Declaration): Alphabetize |
| variables. Reformatting of code and comments. Rewrite the |
| section on processing of anonymous access-to-task types in |
| record components. |
| * exp_ch3.ads (Build_Class_Wide_Master): Moved to exp_ch9. |
| (Build_Master_Renaming): Moved to exp_ch9. |
| * exp_ch9.adb (Build_Class_Wide_Master): Moved from exp_ch3. |
| (Build_Master_Entity): Add formal parameter |
| Use_Current. Reformatting of code and comments. |
| (Build_Master_Renaming): Moved from exp_ch3. |
| * exp_ch9.ads (Build_Class_Wide_Master): Moved from |
| exp_ch3. Update comment on usage. |
| (Build_Master_Entity): |
| Add formal parameter Use_Current. Update comment on usage. |
| (Build_Master_Renaming): Moved from exp_ch3. |
| * sem_ch3.adb (Access_Definition): Remove redundant code to |
| create a _master and a renaming. |
| |
| 2011-10-13 Ed Schonberg <schonberg@adacore.com> |
| |
| * lib-xref.adb: Do no emit reference to overridden operation, |
| if it is internally generated. |
| |
| 2011-10-13 Vincent Celier <celier@adacore.com> |
| |
| * bindgen.adb: Remove any processing related to g-trasym |
| * Makefile.rtl: Add g-trasym.o to GNATRTL_NONTASKING_OBJS |
| * mlib-prj.adb: Remove any processing related to g-trasym. |
| |
| 2011-10-12 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_util.adb (Denotes_Same_Prefix): Fix fatal warning. |
| * gcc-interface/Make-lang.in (WARN_ADAFLAGS): New. |
| (ALL_ADAFLAGS): Include WARN_ADAFLAGS. |
| (ADA_FLAGS_TO_PASS): Likewise. |
| (COMMON_FLAGS_TO_PASS): New. |
| (ADA_TOOLS_FLAGS_TO_PASS): Use COMMON_FLAGS_TO_PASS. In the regular |
| native case, also use FLAGS_TO_PASS and ADA_FLAGS_TO_PASS. |
| (gnatlib): Use COMMON_FLAGS_TO_PASS. |
| (ada.install-common): Likewise. |
| (install-gnatlib): Likewise. |
| (install-gnatlib-obj): Likewise. |
| (gnattools): Use ADA_TOOLS_FLAGS_TO_PASS for gnattools1 as well. |
| (gnat-cross): Delete. |
| (gnatboot): Likewise. |
| (gnatboot2): Likewise. |
| (gnatboot3): Likewise. |
| (gnatstage1): Likewise. |
| (gnatstage2): Likewise. |
| * gcc-interface/Makefile.in (SOME_ADAFLAGS): Likewise. |
| (MOST_ADAFLAGS): Likewise. |
| (LOOSE_CFLAGS): Likewise. |
| (gnat-cross): Likewise. |
| (GNATLIBFLAGS): Add -W -Wall. |
| (GNATLIBCFLAGS_FOR_C): Likewise. |
| * gcc-interface/lang.opt: Remove C-specific warnings. Add doc lines. |
| * gcc-interface/misc.c (gnat_handle_option): Remove obsolete cases. |
| |
| 2011-10-12 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Attribute_to_gnu): Use remove_conversions. |
| (push_range_check_info): Likewise. |
| (gnat_to_gnu) <N_Code_Statement>: Likewise. |
| * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: Likewise. |
| (gnat_invariant_expr): Likewise. |
| * gcc-interface/utils.c (compute_related_constant): Likewise. |
| (max_size): Fix handling of SAVE_EXPR. |
| (remove_conversions): Fix formatting. |
| |
| 2011-10-12 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (DECL_LOOP_PARM_P): New flag. |
| (DECL_INDUCTION_VAR): New macro. |
| (SET_DECL_INDUCTION_VAR): Likewise. |
| * gcc-interface/gigi.h (convert_to_index_type): Declare. |
| (gnat_invariant_expr): Likewise. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If this is a loop |
| parameter, set DECL_LOOP_PARM_P on it. |
| * gcc-interface/misc.c (gnat_print_decl) <VAR_DECL>: If DECL_LOOP_PARM_P |
| is set, print DECL_INDUCTION_VAR instead of DECL_RENAMED_OBJECT. |
| * gcc-interface/trans.c (gnu_loop_label_stack): Delete. |
| (struct range_check_info_d): New type. |
| (struct loop_info_d): Likewise. |
| (gnu_loop_stack): New stack. |
| (Identifier_to_gnu): Set TREE_READONLY flag on the first dereference |
| built for a by-double-ref read-only parameter. If DECL_LOOP_PARM_P |
| is set, do not test DECL_RENAMED_OBJECT. |
| (push_range_check_info): New function. |
| (Loop_Statement_to_gnu): Push a new struct loop_info_d instead of just |
| the label. Reference the label and the iteration variable from it. |
| Build the special induction variable in the unsigned version of the |
| size type, if it is larger than the base type. And attach it to the |
| iteration variable if the latter isn't by-ref. In the iteration scheme |
| case, initialize the invariant conditions in front of the loop if |
| deemed profitable. Use gnu_loop_stack. |
| (gnat_to_gnu) <N_Exit_Statement>: Use gnu_loop_stack. |
| <N_Raise_Constraint_Error>: Always process the reason. In the range |
| check and related cases, and if loop unswitching is enabled, compute |
| invariant conditions and push this information onto the stack. |
| Do not translate again the condition if it has been already translated. |
| * gcc-interface/utils.c (record_global_renaming_pointer): Assert that |
| DECL_LOOP_PARM_P isn't set. |
| (convert_to_index_type): New function. |
| * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Use it in order |
| to convert the index from the base index type to sizetype. |
| (gnat_invariant_expr): New function. |
| |
| 2011-10-11 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| * gcc-interface/utils.c (def_builtin_1): Delete old interface with |
| two parallel arrays to hold standard builtin declarations, and |
| replace it with a function based interface that can support |
| creating builtins on the fly in the future. |
| * gcc-interface/trans.c (Exception_Handler_to_gnu_zcx): Ditto. |
| (gnat_to_gnu): Ditto. |
| |
| 2011-10-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR lto/50492 |
| * gcc-interface/gigi.h (gnat_pushdecl): Adjust comment. |
| * gcc-interface/utils.c (global_context): New variable. |
| (gnat_pushdecl): Initialize it and set it as the DECL_CONTEXT of DECLs |
| that are either public external or at top level. Use "No" macro. |
| (end_subprog_body): Call decl_function_context. |
| (rest_of_subprog_body_compilation): Likewise. |
| |
| 2011-10-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (gnat_useless_type_conversion): Declare. |
| (rest_of_subprog_body_compilation): Likewise. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: For renaming, |
| test for useless conversions by means of gnat_useless_type_conversion. |
| * gcc-interface/trans.c: Include bitmap.h and cgraph.h. |
| (language_function): Add named_ret_val and other_ret_val. |
| (f_named_ret_val): New macro. |
| (f_other_ret_val): Likewise. |
| (gigi): Call rest_of_subprog_body_compilation. |
| (struct nrv_data): New structure. |
| (is_nrv_p): New predicate. |
| (prune_nrv_r): New helper function. |
| (prune_nrv_in_block): New function. |
| (finalize_nrv_r): New helper function. |
| (finalize_nrv): New function. |
| (return_value_ok_for_nrv_p): New predicate. |
| (build_return_expr): If optimization is enabled, record candidates for |
| the Named Return Value optimization. |
| (build_function_stub): Call rest_of_subprog_body_compilation. |
| (Subprogram_Body_to_gnu): If optimization is enabled and there are |
| candidates, finalize the Named Return Value optimization. |
| Call rest_of_subprog_body_compilation. |
| (call_to_gnu): At the end, if a return value is needed, simplify the |
| result before wrapping it up in a COMPOUND_EXPR. |
| * gcc-interface/utils.c (end_subprog_body): Split into... |
| (rest_of_subprog_body_compilation): ...this. New function. |
| (gnat_useless_type_conversion): Likewise. |
| |
| 2011-10-06 Thomas Quinot <quinot@adacore.com> |
| |
| * einfo.ads, exp_attr.adb, exp_ch3.adb, exp_ch4.adb, exp_ch7.adb, |
| exp_ch9.adb, exp_ch9.ads, exp_strm.adb, exp_util.adb, freeze.adb, |
| g-debpoo.ads, opt.ads, par-ch12.adb, par-ch2.adb, par-ch3.adb, |
| par-ch5.adb, par-ch6.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb, |
| sem_ch10.adb, sem_ch12.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, |
| sem_ch6.adb, sem_intr.adb, sem_res.ads, sem_type.adb, sem_util.adb, |
| s-regpat.adb, s-tpopde-vms.ads: Minor reformatting. |
| * s-osinte-freebsd.ads: Fix for tasking failures on FreeBSD. |
| |
| 2011-10-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cihase.adb, a-ciorma.adb: Avoid accessibility checks in container |
| references. |
| |
| 2011-10-06 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cuprqu.ads, a-cuprqu.adb, a-cbprqu.ads, a-cbprqu.adb |
| (Dequeue_Only_High_Priority): Protected procedure now implemented. |
| |
| 2011-10-06 Vincent Celier <celier@adacore.com> |
| |
| * g-trasym.adb: Replace old implementation with the default |
| implementation that returns list of addresses as "0x...". |
| * g-trasym.ads: Update the list of platforms with the full |
| capability. Indicate that there is a default implementation |
| for other platforms. |
| * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: Remove. |
| * gcc-interface/Makefile.in: Remove g-trasym-unimplemented, as there |
| is now a default implementation for all platforms without the full |
| capability. |
| |
| 2011-10-06 Robert Dewar <dewar@adacore.com> |
| |
| * a-ciorse.adb, a-cihase.adb, a-cihase.ads, a-coorse.adb, |
| a-cborse.adb, a-comutr.adb, a-ciorma.adb, a-cbmutr.adb, |
| a-cbmutr.ads, a-cbhase.adb, a-cbhase.ads: Minor reformatting and code |
| reorganization (use conditional expressions). |
| |
| 2011-10-06 Robert Dewar <dewar@adacore.com> |
| |
| * sem_res.adb (Resolve_Arithmetic_Op): Fix bad warning for |
| floating divide by zero. |
| |
| 2011-10-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb: Limited interfaces that are not immutably limited |
| are OK in return statements. |
| |
| 2011-09-30 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (Darwin): Partial reversion of previous |
| change to powerpc section. |
| |
| 2011-09-29 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (Darwin): Factor LIBGNAT_TARGET_PAIRS |
| across the port. |
| |
| 2011-09-27 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cbhase.adb, a-cbhase.ads, a-cborse.adb, a-cborse.ads, |
| a-cihase.adb, a-cihase.ads, a-ciorse.adb, a-ciorse.ads, |
| a-coorse.adb, a-coorse.ads: Add iterator machinery to bounded sets and |
| indefinite sets. |
| * a-coorma.ads: Minor reformmating. |
| * einfo.ads: Improve the comment describing the |
| Directly_Designated_Type function. |
| * a-ciorma.adb, a-ciorma.ads: Add iterator machinery to indefinite |
| ordered maps. |
| * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update |
| dependencies. |
| |
| 2011-09-27 Robert Dewar <dewar@adacore.com> |
| |
| * a-comutr.ads: Minor reformatting. |
| |
| 2011-09-27 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cimutr.adb, a-cimutr.ads, a-cbmutr.adb, a-cbmutr.ads: Add children |
| iterators to multiway trees. |
| |
| 2011-09-27 Yannick Moy <moy@adacore.com> |
| |
| * debug.adb (d.D): New option for strict Alfa mode. |
| * opt.ads (Strict_Alfa_Mode): New flag to interpret compiler |
| permissions as strictly as possible. |
| * sem_ch3.adb (Signed_Integer_Type_Declaration): In non-strict |
| Alfa mode, now, interpret ranges of base types like GNAT does; in |
| strict mode, simply change the range of the implicit base Itype. |
| * gnat1drv.adb: Update comments. Set Strict_Alfa_Mode. |
| |
| 2011-09-27 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb: Minor comment fixes. |
| |
| 2011-09-27 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-comutr.adb, a-comutr.ads: Add children iterators on multiway |
| trees. |
| |
| 2011-09-27 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * checks.adb (Apply_Scalar_Range_Check): Use Designated_Type |
| instead of Directly_Designated_Type in the indirect array case. |
| |
| 2011-09-27 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb, exp_aggr.adb: Minor reformatting. |
| |
| 2011-09-27 Ed Schonberg <schonberg@adacore.com> |
| |
| * sinfo.ads, par-ch3.adb: Minor comment update: aspect specification |
| on subtype declarations. |
| * exp_aggr.adb: Minor comment update. |
| |
| 2011-09-27 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Safe_Prefixed_Reference): Remove always-false |
| test in the N_Explicit_Dereference case. Fold double logical |
| negation in the special loop case and conditionalize it on |
| Variable_Ref being true. |
| |
| 2011-09-27 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Selected_Component): If the prefix is a |
| single protected object and the selector is a discriminant or an |
| entry family, this is a non-overloaded candidate interpretation, |
| and possible primitive operations of the type must not be |
| examined. |
| |
| 2011-09-27 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taspri-posix-noaltstack.ads (Lock): Mark fields aliased. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * s-osinte-hpux.ads, s-osinte-aix.ads, s-osinte-solaris-posix.ads, |
| s-osinte-irix.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads: |
| Add dummy definitions for pthread_rwlock_t |
| and pthread_rwlockattr_t on all POSIX platforms. |
| * s-taprop-irix.adb, s-taprop-posix.adb (Initialize_Lock): Fix lock |
| reference. |
| (Finalize_Lock): Likewise. |
| (Write_Lock): Likewise. |
| (Unlock): Likewise. |
| |
| 2011-09-27 Tristan Gingold <gingold@adacore.com> |
| |
| * s-tassta.adb (Task_Wrapper): Increase Guard_Page_Size value for |
| windows 64. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * s-osinte-hpux.ads, s-taprop-vxworks.adb, s-taspri-vxworks.ads, |
| s-taprop-tru64.adb, s-osinte-aix.ads, s-taspri-posix-noaltstack.ads, |
| s-taspri-mingw.ads, s-taprop-vms.adb, s-tpoben.adb, s-tpoben.ads, |
| s-taprop-mingw.adb, s-taprob.adb, s-taprob.ads, |
| s-osinte-solaris-posix.ads, s-taprop-solaris.adb, s-taspri-solaris.ads, |
| s-osinte-irix.ads, s-taprop-irix.adb, s-osinte-darwin.ads, |
| s-taspri-dummy.ads, s-taspri-posix.ads, s-taprop.ads, |
| s-taspri-vms.ads, s-osinte-freebsd.ads, s-taprop-hpux-dce.adb, |
| s-taspri-hpux-dce.ads, s-taspri-tru64.ads, s-taprop-dummy.adb, |
| s-taprop-posix.adb: Revert previous changes. |
| (Lock): Now a record containing the two possible lock |
| (mutex and read/write) defined in OS_Interface. |
| * s-taprop-linux.adb (Finalize_Protection): Use r/w lock for |
| 'R' locking policy. |
| (Initialize_Protection): Likewise. |
| (Lock): Likewise. |
| (Lock_Read_Only): Likewise. |
| (Unlock): Likewise. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * s-taspri-posix-noaltstack.ads (RW_Lock): This type is now defined as |
| OS_Interface.pthread_rwlock_t. |
| |
| 2011-09-27 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, a-cimutr.adb, a-cimutr.ads, gnat1drv.adb, a-comutr.adb, |
| a-comutr.ads, exp_dist.adb, a-cbmutr.adb, a-cbmutr.ads, |
| sem_ch5.adb, sem_util.adb: Minor reformatting. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * s-taprop.ads (Initialize_Lock)[RW_Lock]: New spec for r/w lock. |
| (Finalize_Lock)[RW_Lock]: Likewise. |
| (Write_Lock)[RW_Lock]: Likewise. |
| (Unlock)[RW_Lock]: Likewise. |
| (Read_Lock): Define L as RW_Lock (instead of Lock). |
| * s-taprop-linux.adb (Initialize_Lock)[RW_Lock]: New |
| routine for r/w lock. |
| (Finalize_Lock)[RW_Lock]: Likewise. |
| (Write_Lock)[RW_Lock]: Likewise. |
| (Unlock)[RW_Lock]: Likewise. |
| (Read_Lock): Define L as RW_Lock (instead of Lock). |
| |
| * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb, |
| s-taprop-mingw.adb, s-taprop-solaris.adb, s-taprop-irix.adb, |
| s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-posix.adb |
| (Initialize_Lock)[RW_Lock]: Same implementation as corresponding |
| routine for standard lock. |
| (Finalize_Lock)[RW_Lock]: Likewise. |
| (Write_Lock)[RW_Lock]: Likewise. |
| (Unlock)[RW_Lock]: Likewise. |
| (Read_Lock): Define L as RW_Lock (instead of Lock). |
| * s-taprob.ads, s-tpoben.ads (Protection): Add RWL (RW_Lock) |
| in the record definition. |
| * s-taprob.adb, s-taproben.adb (Finalize_Protection): Use r/w |
| lock for 'R' locking policy. |
| (Initialize_Protection): Likewise. |
| (Lock): Likewise. |
| (Lock_Read_Only): Likewise. |
| (Unlock): Likewise. |
| * s-taspri-posix.ads (RW_Lock): New type defined as |
| OS_Interface.pthread_rwlock_t. |
| |
| * s-taspri-vxworks.ads, s-taspri-posix-noaltstack.ads, |
| s-taspri-mingw.ads, s-taspri-solaris.ads, s-taspri-dummy.ads, |
| s-taspri-posix.ads, s-taspri-vms.ads, s-taspri-hpux-dce.ads, |
| s-taspri-tru64.ads (RW_Lock): New type defined as alias to Lock. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * exp_ch9.adb, s-taspri-posix.ads: Minor reformatting. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * s-osinte-aix.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads, |
| s-osinte-hpux.ads, s-osinte-irix.ads, |
| s-osinte-solaris-posix.ads (pthread_rwlock_t): New definition alias of |
| pthread_mutex_t. |
| (pthread_rwlockattr_t): New definition alias of pthread_mutexattr_t. |
| * s-osinte-linux.ads (pthread_rwlock_t, pthread_rwlockattr_t, |
| pthread_rwlockattr_init, pthread_rwlockattr_destroy, |
| pthread_rwlockattr_setkind_np, pthread_rwlock_init, |
| pthread_rwlock_destroy, pthread_rwlock_rdlock, |
| pthread_rwlock_wrlock, pthread_rwlock_unlock): New. |
| |
| 2011-09-27 Pascal Obry <obry@adacore.com> |
| |
| * rtsfind.ads: Add RE_Lock_Read_Only into rtsfind circuitry. |
| (RE_Id): Add RE_Lock_Read_Only. |
| (RE_Unit_Table): Likewise. |
| * sem_prag.adb (Process_Convention): Change Pragma_Locking_Policy |
| to lift restriction on first character. Handle now the |
| Name_Concurrent_Readers_Locking where policy character is set to |
| 'R'. |
| * snames.ads-tmpl (Name_Concurrent_Readers_Locking): New |
| constant. |
| * exp_ch9.adb (Build_Protected_Subprogram_Body): Generate a |
| read only lock for function in protected object. |
| * s-taprob.ads (Lock_Read_Only): Remove obsolete comment as |
| this routine is now used. |
| |
| 2011-09-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * s-atocou-x86.adb (Decrement): Use %;. |
| (Increment): Likewise. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the |
| dereference of the pointer to the storage area. Remove useless type |
| conversions and factor out common code. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (maybe_unconstrained_array): Declare TYPE local |
| variable and use it throughout. |
| <UNCONSTRAINED_ARRAY_TYPE>: Add 'break' at the end. |
| <RECORD_TYPE>: Do not unconditionally convert to the unpadded type as a |
| first step. Also convert to the unpadded type as a last step. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (create_subprog_decl): Replace TREE_CHAIN with |
| DECL_CHAIN in comment. |
| * gcc-interface/trans.c (gigi): Likewise. |
| (Attribute_to_gnu): Likewise. |
| (build_function_stub): Likewise. |
| (gnat_to_gnu): Likewise. |
| * gcc-interface/utils.c (create_subprog_decl): Likewise. |
| (convert_vms_descriptor64): Likewise. |
| (convert_vms_descriptor32): Likewise. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (assoc_to_constructor): Minor tweaks. |
| * gcc-interface/utils2.c (build_simple_component_ref): Fix formatting |
| issues. Use COMPLETE_TYPE_P in assertion. Also set TREE_READONLY if |
| the type of the record is TYPE_READONLY. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN |
| OUT formal parameter which is of an null-exclusion access subtype. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Set the flag. |
| (gnat_to_gnu_param): Likewise. |
| * gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Invoke |
| maybe_unconstrained_array instead of doing the work manually. |
| (maybe_unconstrained_array): Propagate the TREE_THIS_NOTRAP flag. |
| * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: If operand |
| is a DECL with the flag, set TREE_THIS_NOTRAP on the reference. |
| (gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag. |
| (gnat_stabilize_reference): Likewise. |
| |
| 2011-09-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (TYPE_NULL_BOUNDS): New macro. |
| (SET_TYPE_NULL_BOUNDS): Likewise. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set again |
| TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template. |
| * gcc-interface/trans.c (Identifier_to_gnu): Return initializers of fat |
| pointer types. |
| * gcc-interface/utils.c (create_var_decl_1): If the object is external, |
| check that the initializer is a valid constant expression for use in |
| initializing a static variable. Add missing guard. |
| (update_pointer_to): Adjust TYPE_NULL_BOUNDS if set. |
| (convert_to_fat_pointer): In the null fat pointer case, build a valid |
| pointer for the bounds. |
| * gcc-interface/utils2.c (compare_fat_pointers): New function. |
| (build_binary_op) <EQ_EXPR>: Call it to compare fat pointers. |
| |
| 2011-09-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (TREE_THIS_NOTRAP): Redefine. |
| * gcc-interface/trans.c (Identifier_to_gnu): Factor out common code in |
| the by-ref case. Do not set TREE_READONLY on a renamed object. Set |
| TREE_THIS_NOTRAP on UNCONSTRAINED_ARRAY_REF nodes. |
| (Attribute_to_gnu) <Attr_Length>: Expand the use of the parameter cache |
| to the indirect case. |
| * gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Preserve |
| the TREE_THIS_NOTRAP flag. |
| |
| 2011-09-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Loop_Statement_to_gnu): In the case of an |
| iteration scheme, always generate the do-while form if optimization |
| is enabled. Use more straightforward test at the end. |
| |
| 2011-09-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Subtype>: Use |
| XNEW instead of xmalloc. Do not build useless pointer type. |
| <E_Anonymous_Access_Subprogram_Type>: Use XNEW instead of xmalloc. |
| * gcc-interface/trans.c (gnat_to_gnu) <N_Raise_Constraint_Error>: Tidy. |
| * gcc-interface/utils2.c (build_unary_op): Remove local variable. |
| |
| 2011-09-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not promote |
| the alignment if this doesn't prevent BLKmode access to the object. |
| |
| 2011-09-24 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (darwin): Do not issue the |
| '-flat_namespace' linker flag during Ada build. |
| * mlib-tgt-specific-darwin.adb: Remove '-flat_namespace' flag from the |
| default shared library options. |
| |
| 2011-09-19 Alexandre Oliva <aoliva@redhat.com> |
| |
| * gcc-interface/decl.c (annotate_value): Look up expression for |
| insertion in the cache at the end. |
| |
| 2011-09-19 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-09-19 Steve Baird <baird@adacore.com> |
| |
| * snames.ads-tmpl: Move declaration of Name_Annotate into range of |
| configuration pragma names so that Is_Configuration_Pragma_Name |
| will return True for Name_Annotate. Make corresponding change in |
| Pragma_Id enumeration type. This is needed to allow an Annotate |
| pragma to occur in a configuration pragma file (typically, |
| a gnat.adc file). |
| * gnat_ugn.texi: Add Annotate to the list of configuration pragmas. |
| * gnat_rm.texi: Note that pragma Annotate may be used as a |
| configuration pragma. |
| |
| 2011-09-19 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cbmutr.adb, a-cbmutr.ads, a-cimutr.adb, a-cimutr.ads, |
| a-comutr.adb, a-comutr.ads: Add iterator machinery for multiway trees. |
| |
| 2011-09-19 Yannick Moy <moy@adacore.com> |
| |
| * exp_alfa.adb, exp_alfa.ads (Expand_Alfa_N_In): New function |
| for expansion of set membership. |
| (Expand_Alfa): Call expansion for N_In and N_Not_In nodes. |
| * exp_ch4.adb, exp_ch4.ads (Expand_Set_Membership): Make procedure |
| visible for use in Alfa expansion. |
| * sem_ch5.adb (Analyze_Iterator_Specification): Introduce loop |
| variable in Alfa mode. |
| |
| 2011-09-19 Thomas Quinot <quinot@adacore.com> |
| |
| * s-osinte-darwin.ads: Change SIGADAABRT on Darwin to SIGABRT. |
| |
| 2011-09-19 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch9.adb: Minor reformatting. |
| |
| 2011-09-19 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * freeze.adb (Build_Renamed_Body): Generic subprograms |
| instantiations cannot be poperly inlined by the compiler, do |
| not set the Body_To_Inline attribute in such cases. |
| * sem_ch12.adb (Analyze_Subprogram_Instantiation): Inherit all |
| inlining-related flags from the generic subprogram declaration. |
| |
| 2011-09-19 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_dist.adb, rtsfind.ads, sem_util.adb, sem_util.ads |
| (Build_Stub_Type): Remove, instead copy components from |
| System.Partition_Interface.RACW_Stub_Type. |
| (RPC_Receiver_Decl): Remainder of code from old Build_Stub_Type routine. |
| (Copy_Component_List): New subprogram. |
| |
| 2011-09-19 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref.adb (Generate_Reference): Ignore references to |
| constants in Standard. |
| |
| 2011-09-19 Robert Dewar <dewar@adacore.com> |
| |
| * err_vars.ads, errout.ads: Minor reformatting. |
| |
| 2011-09-19 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads (Impl_Defined_Aspects): New array |
| * lib-writ.adb (No_Dependences): New name for No_Dependence |
| * restrict.adb (No_Dependences): New name for No_Dependence |
| (Check_Restriction_No_Specification_Of_Aspect): New |
| procedure. |
| (Set_Restriction_No_Specification_Of_Aspect): New procedure |
| (Restricted_Profile_Result): New variable |
| (No_Specification_Of_Aspects): New variable |
| (No_Specification_Of_Aspect_Warning): New variable |
| * restrict.ads (No_Dependences): New name for No_Dependence |
| (Check_Restriction_No_Specification_Of_Aspect): New procedure |
| (Set_Restriction_No_Specification_Of_Aspect): New procedure |
| * s-rident.ads: Add restriction |
| No_Implementation_Aspect_Specifications, this is also added to |
| the No_Implementation_Extensions profile. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Check |
| No_Implementation_Defined_Aspects |
| (Analyze_Aspect_Specifications): Check No_Specification_Of_Aspect |
| * sem_prag.adb (Analyze_Aspect_Specifications): Check |
| No_Implementation_Aspects |
| (Analyze_Aspect_Specifications): Check No_Specification_Of_Aspect |
| * snames.ads-tmpl (Name_No_Specification_Of_Aspect): New name |
| |
| 2011-09-19 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref.adb (Generate_Reference): Take into account multiple |
| renamings for Alfa refs. |
| |
| 2011-09-19 Thomas Quinot <quinot@adacore.com> |
| |
| * g-socthi-mingw.adb: Minor reformatting. |
| |
| 2011-09-19 Yannick Moy <moy@adacore.com> |
| |
| * gnat1drv.adb (Adjust_Global_Switches): Set tagged type |
| expansion to False in mode Alfa |
| |
| 2011-09-19 Pascal Obry <obry@adacore.com> |
| |
| * mingw32.h: Remove obsolete code needed for old versions |
| of MingW. |
| |
| 2011-09-19 Robert Dewar <dewar@adacore.com> |
| |
| * errout.ads: Minor reformatting. |
| |
| 2011-09-19 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): When the expression |
| function is transformed into a declaration and a body, insert |
| body at the end of the declarative part, to prevent premature |
| freeze actions, and preserve original specification in the |
| subprogram declaration. |
| |
| 2011-09-19 Vincent Celier <celier@adacore.com> |
| |
| * projects.texi: Minor editing. |
| |
| 2011-09-19 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb, lib-writ.ads, s-restri.ads, sem_ch6.adb, |
| exp_aggr.adb: Minor reformatting. |
| |
| 2011-09-19 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref.adb (Generate_Reference): Change entity referenced |
| to underlying object if any, or else reference to the HEAP. |
| |
| 2011-09-15 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-09-15 Robert Dewar <dewar@adacore.com> |
| |
| * tree_io.ads: Minor reformatting. |
| * a-intnam.ads: Fix bad header. |
| |
| 2011-09-15 Thomas Quinot <quinot@adacore.com> |
| |
| * a-exexpr-gcc.adb: Minor reformatting. |
| |
| 2011-09-15 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch6.adb: Propagate information that an expression function comes |
| from source (otherwise references to this entity are not stored). |
| |
| 2011-09-15 Robert Dewar <dewar@adacore.com> |
| |
| * a-cdlili.adb, a-coinve.adb, a-stzunb-shared.ads, a-suezst.adb, |
| a-suenco.adb, a-stwiun-shared.ads, a-cobove.adb, a-convec.adb, |
| a-btgbso.adb, a-cbdlli.adb, a-suewst.adb: Minor reformatting. |
| |
| 2011-09-15 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): Code cleanup: |
| if the expression function is not a completion, create a |
| new specification for the generated declaration, and keep the |
| original specification in the generated body. Shorter code also |
| ensures that proper warnings are generated for unused formals |
| in all cases. |
| |
| 2011-09-15 Sergey Rybin <rybin@adacore.com> |
| |
| * tree_io.ads: Update ASIS_Version_Number because of the changes |
| in the tree structures for expression functions. |
| |
| 2011-09-15 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-osinte-aix.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads, |
| s-osinte-hpux.ads, s-osinte-lynxos.ads, s-osinte-solaris-posix.ads, |
| s-taprop-posix.adb (CLOCK_MONOTONIC): New constant. |
| (CLOCK_REALTIME): Fix wrong value on some OSes. |
| * s-taprop-posix.adb (Monotonic_Clock): Use CLOCK_MONOTONIC. |
| |
| 2011-09-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (maybe_unconstrained_array): In the reference |
| to unconstrained array case, deal with each branch of a COND_EXPR. |
| * gcc-interface/utils2.c (build_allocator): Deal with each branch of |
| a COND_EXPR in the initializer, if present. |
| |
| 2011-09-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (maybe_pad_type): Do not try to change the form |
| of an addressable type. |
| * gcc-interface/trans.c (gnat_gimplify_expr) <VIEW_CONVERT_EXPR>: New. |
| Deal with those cases for which creating a temporary is mandatory. |
| |
| 2011-09-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (call_to_gnu): Use local variable. Make sure |
| this is a real formal parameter before testing whether it is by ref. |
| |
| 2011-09-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (build_call_0_expr): Delete. |
| (build_call_1_expr): Likewise. |
| (build_call_2_expr): Likewise. |
| (build_call_n_expr): New prototype. |
| * gcc-interface/decl.c (gnat_to_gnu_entity): Use build_call_n_expr. |
| * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Ditto. |
| (Handled_Sequence_Of_Statements_to_gnu): Likewise. |
| (Exception_Handler_to_gnu_zcx): Likewise. |
| (gnat_to_gnu): Likewise. |
| (build_binary_op_trapv): Likewise. |
| * gcc-interface/utils2.c (build_call_0_expr): Delete. |
| (build_call_1_expr): Likewise. |
| (build_call_2_expr): Likewise. |
| (build_call_n_expr): New function. |
| (build_call_raise): Use build_call_n_expr. |
| (build_call_raise_range): Likewise. |
| (build_call_raise_column): Likewise. |
| (build_call_alloc_dealloc_proc): Likewise. |
| (maybe_wrap_malloc): Likewise. |
| (maybe_wrap_free): Likewise. |
| |
| 2011-09-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (build_return_expr): Use void_type_node for |
| MODIFY_EXPR. |
| * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Assert that |
| the result type is null if ENABLE_CHECKING. Set operation_type at the |
| end unconditionally if not set in the previous cases. |
| Use build2 and void_type_node for MODIFY_EXPR. |
| (build_allocator): Use NULL_TREE for MODIFY_EXPR. |
| |
| 2011-09-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (unchecked_convert): Use a field of the right |
| precision when converting to or from an integral type whose precision |
| is not equal to its size. |
| |
| 2011-09-08 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * traceback.c (Darwin) USE_GCC_UNWINDER for Darwin versions >= 8. |
| |
| 2011-09-07 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (darwin): Provide powerpc64 system |
| implementation. |
| * system-darwin-ppc64.ads: New file. |
| |
| 2011-09-06 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (gnatlib-shared-darwin): Remove |
| reference to "-lm". |
| |
| 2011-09-06 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (darwin, SO_OPTS): Provide architecture |
| size switches to the link phase for shared libs. |
| |
| 2011-09-06 Iain Sandoe <iains@gcc.gnu.org> |
| |
| * gcc-interface/Makefile.in (x86_64 darwin arch): Adjust |
| LIBGNAT_TARGET_PAIRS for x86 and x86_64 variants. |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in, gcc-interface/Make-lang.in |
| (gnattools, regnattools, cross-gnattools, canadian-gnattools, |
| gnatlib, gnatlib-sjlj, gnatlib-zcx, gnatlib-shared, gnatlib_and_tools): |
| New targets. |
| (TOOLS_FLAGS_TO_PASS): New. |
| (../stamp-tools): Reintroduce, to avoid merge conflicts. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch10.adb, impunit.ads, impunit.adb (Not_Impl_Defined_Unit): New |
| name for Is_RM_Defined_Unit. Also several fixes to this unit. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * impunit.ads, impunit.adb (Is_RM_Defined_Unit): New function. |
| * s-rident.ads: New restriction No_Implementation_Units |
| (this restriction is also part of the profile |
| No_Implementation_Extensions) |
| * sem_ch10.adb (Analyze_With_Clause): Add check for |
| No_Implementation_Units restriction. |
| |
| 2011-09-06 Jerome Guitton <guitton@adacore.com> |
| |
| * sysdep.c (__gnat_get_task_options): Disable VX_SPE_TASK |
| on vThreads. |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-solita.adb: Minor reformatting. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): The body that |
| is a rewriting of an expression function does not freeze previous |
| entities. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * impunit.adb (Is_Known_Unit): Fix bad handling of Ada 2012 case |
| |
| 2011-09-06 Tristan Gingold <gingold@adacore.com> |
| |
| * gcc-interface/Makefile.in: Handle e500v2-wrs-vxworksae like |
| powerpc-wrs-vxworksae. |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-os_lib.ads (Spawn): Minor documentation clarification, |
| Success is True for a zero exit status. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb: Add message for common iterator error. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch3.adb (Build_Initialization_Call): If the target is a |
| selected component discriminated by a current instance, replace |
| the constraint with a reference to the target object, regardless |
| of whether the context is an init_proc. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * exp_attr.adb: Descriptor_Size is never static. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Add documentation for LSLOC metric in gnatmetric |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * gnat_rm.texi: Clarify that attribute Descriptor_Size is |
| non-static. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve): An expression that is the body of an |
| expression function does not freeze. |
| |
| 2011-09-06 Matthew Heaney <heaney@adacore.com> |
| |
| * a-csquin.ads, a-cusyqu.adb, a-cbprqu.adb, a-cbsyqu.adb, |
| a-cuprqu.adb: Changed copyright notice to indicate current |
| year only. |
| |
| 2011-09-06 Vincent Celier <celier@adacore.com> |
| |
| * prj.adb: Minor spelling error fix in comment |
| * sem_res.adb: Minor reformatting |
| |
| 2011-09-06 Pascal Obry <obry@adacore.com> |
| |
| * sysdep.c (winflush_nt): Removed as not needed anymore. |
| (winflush_95): Likewise. |
| (winflush_init): Likewise. |
| (winflush_function): Likewise. |
| (getc_immediate_common): Remove call to winflush_function. |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference): Rewrite the |
| processing for Descriptor_Size. |
| * gnat_rm.texi: Rephrase the wording for attribute Descriptor_Size |
| to account for its broader usage. |
| * sem_attr.adb (Analyze_Attribute): Change the error detection |
| circuitry for Descriptor_Size as the attribute is now applicable |
| to all types. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * sem_attr.adb, prj-nmsc.adb, exp_aggr.adb: Minor reformatting. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * lib-xref.adb (OK_To_Set_Referenced): A reference to a formal |
| in a parameter association must not set the Referenced flag on |
| the formal. |
| * prj-nmsc.adb (Check_File_Naming_Schemes): Remove useless formal |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * gnat_rm.texi: Add a section on attribute Descriptor_Size |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in (common-tools, gnatmake-re, |
| gnatlink-re): Speed up by using -j0. |
| |
| 2011-09-06 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Call |
| Set_Corresponding_Aspect when creating pragma from aspect. |
| (Add_Predicates): Use new field Corresponding_Aspect. |
| * sem_prag.adb (Analyze_Pragma): Make Pname hold source aspect |
| name when present, for the purpose of issuing error messages; |
| remove local procedure Error_Pragma_Arg_Alternate_Name. |
| * sinfo.adb, sinfo.ads (Corresponding_Aspect): New field in |
| N_Pragma node. |
| (From_Dynamic_Predicate, From_Static_Predicate): Remove fields from |
| N_Pragma node. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * checks.adb, s-except.ads, g-socket.adb: Minor reformatting. |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch6.adb (Build_Heap_Allocator): Add new |
| local variable Desig_Typ. Code and comment reformatting. Add |
| machinery to ensure that the allocation uses a fat pointer when |
| the type of the return object is a constrained array and the |
| function return type is an unconstrained array. |
| |
| 2011-09-06 Vincent Celier <celier@adacore.com> |
| |
| * make.adb, prj-part.adb, prj-nmsc.adb: Remove unused formal |
| parameters in subprograms. |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taprop-mingw.adb (Finalize_TCB): Fix typo. |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-taprop-vxworks.adb, s-tpoaal.adb, s-tpopsp-vxworks.adb |
| (System.Tasking.Primitive_Operations.Specific.Delete): Remove |
| subprogram. |
| (System.Tasking.Primitive_Operations.Specific.Set): If argument |
| is null, destroy task specific data, to make API consistent with |
| other platforms, and thus compatible with the shared version |
| of s-tpoaal.adb. |
| (System.Tasking.Primitive_Operations.ATCB_Allocation.Free_ATCB): |
| Document the above assumption. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb (Expand_Inlined_Call): Fix use of uninitialized |
| variable for type of return value when return type is |
| unconstrained and context is an assignment. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Check_Class_Wide_Actual): Do not generate body of |
| class-wide operation if expansion is not enabled. |
| |
| 2011-09-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * checks.adb (Apply_Scalar_Range_Check): Deal with access |
| type prefix. |
| |
| 2011-09-06 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications, case |
| Aspect_Invariant): Do not issue error at this point on illegal |
| pragma placement, as this is checked later on when analyzing |
| the corresponding pragma. |
| * sem_prag.adb (Error_Pragma_Arg_Alternate_Name): New procedure |
| similar to Error_Pragma_Arg, except the source name of the |
| aspect/pragma to use in warnings may be equal to parameter |
| Alt_Name (Analyze_Pragma, case Pragma_Invariant): refine error |
| message to distinguish source name of pragma/aspect, and whether |
| the illegality resides in the type being public, or being private |
| without a public declaration |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * g-socket.adb (Check_For_Fd_Set): On Windows, no need for bitmap |
| size check (fd_set is implemented differently on that platform). |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb, |
| s-tpoaal.adb, s-taprop-mingw.adb, s-taprop-linux.adb, |
| s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop.ads, |
| s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-posix.adb |
| (ATCB_Allocation): New subpackage of |
| System.Tasking.Primitive_Operations, shared across all targets |
| with full tasking runtime. |
| (ATCB_Allocation.New_ATCB): Moved there (from target specific |
| s-taprop bodies). |
| (ATCB_Allocation.Free_ATCB): New subprogram. Deallocate an ATCB, |
| taking care of establishing a local temporary ATCB if the one |
| being deallocated is Self, to avoid a reference to the freed |
| ATCB in Abort_Undefer. |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-tassta.adb, s-taskin.ads (Free_Task): If the task is not |
| terminated, mark it for deallocation upon termination. |
| (Terminate_Task): Call Free_Task again if the task is marked |
| for automatic deallocation upon termination. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbprqu.ads, a-cbsyqu.ads, a-cuprqu.ads, a-cusyqu.ads, |
| a-intnam-aix.ads, a-intnam-darwin.ads, a-intnam-dummy.ads, |
| a-intnam-freebsd.ads, a-intnam-hpux.ads, a-intnam-irix.ads, |
| a-intnam-linux.ads, a-intnam-lynxos.ads, a-intnam-mingw.ads, |
| a-intnam-solaris.ads, a-intnam-tru64.ads, |
| a-intnam-vms.ads, a-intnam-vxworks.ads, a-intnam.ads, interfac.ads, |
| cstand.adb, s-maccod.ads: Mark all entities as Implementation_Defined |
| * einfo.ads, einfo.adb (Is_Implementation_Defined): New flag |
| * par-prag.adb: Add dummy entry for pragma Implementation_Defined |
| * s-rident.ads: Add new restriction No_Implementation_Identifiers |
| Add new profile No_Implementation_Extensions |
| * sem_prag.adb: Implement pragma Implementation_Defined Implement |
| profile No_Implementation_Extensions |
| * sem_util.adb: Minor reformatting (Set_Entity_With_Style_Check): |
| Check violation of restriction No_Implementation_Identifiers |
| * snames.ads-tmpl: Add entries for pragma Implementation_Defined |
| Add entry for Name_No_Implementation_Extensions |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * impunit.ads: Minor reformatting. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * ali.adb, sem_ch13.adb, lib-xref.adb: Minor reformatting. |
| |
| 2011-09-06 Pascal Obry <obry@adacore.com> |
| |
| * s-osinte-linux.ads, s-oscons-tmplt.c: Use oscons to define sigset_t |
| types. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * g-socket.adb: Minor reformatting |
| |
| 2011-09-06 Javier Miranda <miranda@adacore.com> |
| |
| * ali.adb (Scan_ALI): Add missing support to load references of |
| entities imported from other languages. |
| * ali.ads (Xref_Record): Adding new fields to store the language and |
| name of an imported entity. |
| * lib-xref.adb (Output_Import_Export_Info): Fix typo |
| in comment. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Type_Invariant): A type invariant |
| is allowed on a full type declaration if it is the completion of |
| a private declarations. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): An invariant |
| aspect is allowed on a full type declaration in the private part |
| of a package. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch8.ads: Minor reformatting |
| |
| 2011-09-06 Thomas Quinot <quinot@adacore.com> |
| |
| * s-oscons-tmplt.c, g-socket.adb (GNAT.Sockets.Clear,Set,Is_Set): |
| Guard against socket values that are not in [0;FD_SETSIZE[ |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * s-osinte-linux.ads, a-iteint.ads, exp_ch6.adb, s-solita.adb: Minor |
| reformatting. |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-linux-alpha.ads: Minor reformatting |
| * s-oscons-tmplt.c: Fix generated comments in s-oscons template. |
| Use sizeof instead of corresponding C defines in s-oscons template. |
| |
| 2011-09-06 Vadim Godunko <godunko@adacore.com> |
| |
| * a-convec.ads, a-iteint.ads: Minor reformatting. |
| |
| 2011-09-06 Vincent Celier <celier@adacore.com> |
| |
| * projects.texi: Add menus and @node lines. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb (Expand_Inlined_Call): Handle properly the case |
| where the return type is an unconstrained array and the context |
| is an assignment. Optimize the case when the target of the |
| assignment is a selected component. |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-solita.adb: Update comments. |
| |
| 2011-09-06 Pascal Obry <obry@adacore.com> |
| |
| * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, s-linux-mipsel.ads, |
| s-linux-sparc.ads: Remove hard coded and now wrong definitions. |
| * s-oscons-tmplt.c: Add support for generating pthread related |
| types size on GNU/Linux as done for Darwin. |
| * s-osinte-linux.ads: Use s-oscons to define the pthread types. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch6.adb: Fix minor typo. |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb: Remove with and use clauses for Get_Targ. |
| (Alignment_Of): Moved to the body of Nearest_Multiple_Rounded_Up. |
| (Double_Size_Of): Alphabetized. Update the comment on usage. |
| (Make_Finalize_Address_Stmts): Update comments and reformat code. |
| (Nearest_Multiple_Rounded_Up): New routine. |
| (Size_Of): Update comment on usage. The generated expression now |
| accounts for alignment gaps by rounding the size of the type to the |
| nearest multiple rounded up of the type's alignment. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.adb, g-comlin.adb: Minor reformatting. |
| |
| 2011-09-06 Steve Baird <baird@adacore.com> |
| |
| * exp_ch4.adb (Expand_Allocator_Expression): Look through |
| derived subprograms in checking for presence of an |
| Extra_Accessibility_Of_Result formal parameter. |
| * exp_ch6.adb (Expand_Call): Look through derived subprograms in |
| checking for presence of an Extra_Accessibility_Of_Result formal |
| parameter. |
| (Expand_Call.Add_Actual_Parameter): Fix a bug in the |
| case where the Parameter_Associatiations attribute is already set, |
| but set to an empty list. |
| (Needs_Result_Accessibility_Level): |
| Unconditionally return False. This is a temporary |
| change, disabling the Extra_Accessibility_Of_Result |
| mechanism. |
| (Expand_Simple_Function_Return): Check for |
| Extra_Accessibility_Of_Result parameter's presence instead of |
| testing Ada_Version when generating a runtime accessibility |
| check which makes use of the parameter. |
| |
| 2011-09-06 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Case_Expression): Actions created for the |
| expression in a given case alternative must be attached to the |
| statement list of the ccrresponding case statement alternative |
| They cannot be propagated ahead of the case statement, because |
| the validity of the expression that generated the action may |
| hold only for that alternative. |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb: Remove with and use clauses for Get_Targ. |
| (Alignment_Of): Remove the code for strict alignment targets. |
| (Double_Alignment_Of): Removed. |
| (Double_Size_Of): New routine. |
| (Make_Finalize_Address_Stmts): Change the |
| calculation of the dope's size. Update relevant comments. |
| (Size_Of): New routine. |
| |
| 2011-09-06 Steve Baird <baird@adacore.com> |
| |
| * einfo.ads (Extra_Accessibility): Update associated comment to use |
| the term "present" correctly ("present" just means that it is not |
| an error to query the value of the attribute - it does not imply |
| that the value must be non-null). |
| (Extra_Constrained): Ditto. |
| (Is_Visible_Formal): Ditto. |
| (Extra_Accessibility_Of_Result) Ditto; also add Inline pragma. |
| (Set_Extra_Accessibility_Of_Result): Add Inline pragma. |
| * exp_ch4.adb (Expand_Allocator_Expression): Improve a comment. |
| * exp_ch6.adb (Expand_Call): The callee may require an |
| Extra_Accessibility_Of_Result actual parameter even if Ada_Version |
| < Ada_2012. This can occur if the callee is exported from a Gnat |
| runtimes unit. Also improve a comment. |
| |
| 2011-09-06 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb: Add with and use clauses for Get_Targ. |
| (Alignment_Of): Rename formal parameter Some_Typ |
| to Typ, update related comment. Use the allocator alignment on |
| strict alignment targets such as SPARC. |
| (Double_Alignment_Of): Rename formal parameter Some_Typ to Typ, update |
| related comment. |
| |
| 2011-09-06 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch9.adb (Check_Interfaces): Test |
| Is_Limited_Type rather than Is_Limited_Record when checking that |
| the partial view of a synchronized full view must be limited. |
| |
| 2011-09-06 Emmanuel Briot <briot@adacore.com> |
| |
| * g-comlin.adb (Free): Fix memory leak. |
| |
| 2011-09-06 Robert Dewar <dewar@adacore.com> |
| |
| * sem_util.adb, exp_ch6.adb: Minor reformatting and code reorganization. |
| |
| 2011-09-06 Steve Baird <baird@adacore.com> |
| |
| * einfo.ads (Extra_Accessibility_Of_Result): New function; in the |
| (Ada2012) cases described in AI05-0234 where the accessibility |
| level of a function result is "determined by the point of |
| call", an implicit parameter representing that accessibility |
| level is passed in. Extra_Accessibilty_Of_Result yields this |
| additional formal parameter. Extra_Accessibility_Of_Result |
| is analogous to the existing Extra_Accessibility |
| function used in the implementation of access parameters. |
| (Set_Extra_Accessibility_Of_Result): New procedure; sets |
| Extra_Accessibility_Of_Result attribute. |
| * einfo.adb (Extra_Accessibility_Of_Result): New function. |
| (Set_Extra_Accessibility_Of_Result): New procedure. |
| (Write_Field19_Name): Display Extra_Accessibilty_Of_Result attribute. |
| * sem_util.adb (Dynamic_Accessibility_Level): Set Etype of |
| an accessibility level literal to Natural; introduce a nested |
| function, Make_Level_Literal, to do this. |
| * exp_ch6.ads (Needs_Result_Accessibility_Level): New function; |
| determines whether a given function (or access-to-function |
| type) needs to have an implicitly-declared accessibility-level |
| parameter added to its profile. |
| (Add_Extra_Actual_To_Call): Export an existing procedure which was |
| previously declared in the body of Exp_Ch6. |
| * exp_ch6.adb (Add_Extra_Actual_To_Call): Export declaration by moving |
| it to exp_ch6.ads. |
| (Has_Unconstrained_Access_Discriminants): New Function; a |
| predicate on subtype entities which returns True if the given |
| subtype is unconstrained and has one or more access discriminants. |
| (Expand_Call): When expanding a call to a function which takes an |
| Extra_Accessibility_Of_Result parameter, pass in the appropriate |
| actual parameter value. In the case of a function call which is |
| used to initialize an allocator, this may not be possible because |
| the Etype of the allocator may not have been set yet. In this |
| case, we defer passing in the parameter and handle it later in |
| Expand_Allocator_Expression. |
| (Expand_Simple_Function_Return): When returning from a function which |
| returns an unconstrained subtype having at least one access |
| discriminant, generate the accessibility check needed to ensure that |
| the function result will not outlive any objects designated by its |
| discriminants. |
| (Needs_Result_Accessibility_Level): New function; see exp_ch6.ads |
| description. |
| * exp_ch4.adb (Expand_Allocator_Expression): When a function call |
| is used to initialize an allocator, we may need to pass in "the |
| accessibility level determined by the point of call" (AI05-0234) |
| to the function. Expand_Call, where such actual parameters are |
| usually generated, is too early in this case because the Etype of |
| the allocator (which is used in determining the level to be passed |
| in) may not have been set yet when Expand_Call executes. Instead, |
| we generate code to pass in the appropriate actual parameter |
| in Expand_Allocator_Expression. |
| * sem_ch6.adb (Create_Extra_Formals): Create |
| the new Extra_Accessibility_Of_Result formal if |
| Needs_Result_Accessibility_Level returns True. This includes the |
| introduction of a nested procedure, Check_Against_Result_Level. |
| |
| 2011-09-06 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in (X86_TARGET_PAIRS): Remove duplicate |
| declaration. |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-finmas.adb (Set_Finalize_Address): Explain the reason |
| for the synchronization. Move the test for null from |
| s-stposu.Allocate_Any_Controlled to this routine since the check |
| needs to be protected too. |
| (Set_Heterogeneous_Finalize_Address): Explain the reason for the |
| synchronization code. |
| * s-finmas.ads (Set_Heterogeneous_Finalize_Address): Add comment |
| explaining the context in which this routine is used. |
| * s-stposu.adb (Allocate_Any_Controlled): Move the test for null |
| to s-finmas.Set_Finalize_Address. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * einfo.ads: Document that itypes have no parent field. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * rtsfind.adb (Check_CRT): Check for overloaded entity |
| * rtsfind.ads: Document that entities to be found by rtsfind |
| cannot be overloaded |
| * s-taenca.adb, s-tasren.adb, s-tpobop.adb, s-tpoben.ads, s-tpoben.adb |
| (Lock_Entries_With_Status): New name for Lock_Entries with two |
| arguments (changed to meet rtsfind no overloading rule). |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-finmas.adb (Set_Finalize_Address (Address, |
| Finalize_Address_Ptr)): Renamed to Set_Heterogeneous_Finalize_Address. |
| (Set_Finalize_Address (in out Finalization_Master, |
| Finalize_Address_Ptr): Add synchronization code. |
| * s-finmas.ads (Set_Finalize_Address (Address, |
| Finalize_Address_Ptr)): Renamed to Set_Heterogeneous_Finalize_Address. |
| * s-stposu.adb (Allocate_Any_Controlled): Update the call to |
| Set_Finalize_Address for the heterogeneous case. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb: Undo previous change, not suitable after all. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.ads: Minor comment clarification. |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch6.adb (Move_Activation_Chain): Rewritten. The routine |
| no longer needs to search through the entities of the return |
| statement scope to find the _chain. |
| * sem_ch5.adb: Add with and use clauses for Exp_Ch6 and Sem_Ch6. |
| (Analyze_Block_Statement): Add local variable |
| Is_BIP_Return_Statement. Add machinery to install all entities |
| produced by the expansion of the return object declaration. |
| (Install_Return_Entities): New routine. |
| * sem_ch6.ads, sem_ch6.adb (Install_Entity): Moved from body to spec. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch10.adb (Analyze_Context): Apply simple fixup if context |
| of subunit is incomplete. |
| (Analyze_Proper_Body): If parent spec is not available, do not |
| attempt analysis. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_disp.adb (Find_Controlling_Arg): Add checks for |
| interface type conversions, that are expanded into dereferences. |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): |
| Examine the parameter and return profile of a subprogram and swap |
| any incomplete types coming from a limited context with their |
| corresponding non-limited views. |
| (Exchange_Limited_Views): New routine. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Prepare_Private_Subtype_Completion): Set parent |
| of internal entity to the subtype declaration, so that when |
| entities are subsequently exchanged in a package body, the tree |
| remains properly formatted for ASIS. |
| |
| 2011-09-05 Johannes Kanig <kanig@adacore.com> |
| |
| * g-comlin.adb (Set_Usage): Additional optional argument to set help |
| message. |
| (Display_Help): display the user given help message, if available. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (OK_For_Limited_Init_In_05): The expression |
| is legal if the original node is an identifier that is a |
| parameterless function call. |
| |
| 2011-09-05 Pascal Obry <obry@adacore.com> |
| |
| * prj-nmsc.adb: Minor reformatting. |
| Add support for standalone aggregate library. |
| (Check_Stand_Alone_Library): Handle standalone aggregate library. |
| * projects.texi: Fix documentation for aggregate library projects. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb: Minor reformatting. |
| |
| 2011-09-05 Matthew Gingell <gingell@adacore.com> |
| |
| * s-tassta.adb (Task_Wrapper): Ensure that we don't try to write the |
| stack guard page on PPC Linux. This patch ensures the 64K guard page at |
| the bottom of the stack is not overwritten. |
| |
| 2011-09-05 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_intr.adb, s-tasini.adb: Minor reformatting. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Access_Definition): If an access type declaration |
| appears in a child unit, the scope of whatever anonymous type |
| may be generated is the child unit itself. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): Do not set |
| Comes_From_Source on rewritten body. |
| (Analyze_Subprogram_Body_Helper): Check that the original node for |
| the body comes from source, when determining whether expansion |
| of a protected operation is needed. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_aggr.adb (Replace_Type): If the target of the assignment is |
| a selected component and the right-hand side is a self-referential |
| access, the proper prefix of the rewritten attribute is a copy |
| of the left-hand side, not of its prefix. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch5.adb: Minor reformatting. |
| * sem_ch3.adb: Minor code clean up. |
| |
| 2011-09-05 Jose Ruiz <ruiz@adacore.com> |
| |
| * exp_ch9.adb (Make_Initialize_Protection): The fact that |
| restriction No_Dynamic_Attachment is in effect or not should |
| not influence the default priority associated to a protected |
| object. With this change, when the restriction is in effect (as |
| is the case for the Ravenscar profile) the default priority of |
| a protected object with an interrupt handler is in the range of |
| interrupt priorities (Default_Interrupt_Priority) as required |
| by D.3(10). |
| |
| 2011-09-05 Arnaud Charlet <charlet@adacore.com> |
| |
| * a-iteint.ads: Fix header. |
| |
| 2011-09-05 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Do_Autoconf): Make sure Obj_Dir always ends |
| with a directory separator to avoid output such as: |
| "/path/to/objauto.cgpr" has been deleted. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb: Better error message. |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_aggr.adb: Add with and use clause for Exp_Ch6. |
| (Expand_Array_Aggregate): Detect a special case of an aggregate |
| which contains tasks in the context of an unexpanded return |
| statement of a build-in-place function. |
| * exp_ch6.adb: Add with and use clause for Exp_Aggr. |
| (Expand_N_Extended_Return_Statement): Detect a delayed aggregate |
| which contains tasks and expand it now that the original simple |
| return statement has been rewritten. |
| * exp_ch9.adb (Build_Activation_Chain_Entity): Code |
| reformatting. Do not create a chain for an extended return |
| statement if one is already available. |
| (Has_Activation_Chain): New routine. |
| |
| 2011-09-05 Marc Sango <sango@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): Remove |
| the wrong test and add the correct test to detect the violation |
| of illegal use of unconstrained string type in SPARK mode. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iteration_Specification): Improve error |
| message on an iterator over an array. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * lib-xref-alfa.adb: Minor reformatting. |
| |
| 2011-09-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_res.adb, par.adb, par-ch6.adb, g-comlin.adb, |
| exp_ch6.adb, lib-xref-alfa.adb: Minor reformatting. |
| |
| 2011-09-05 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch7.adb, exp_ch6.adb: Minor reformatting. |
| |
| 2011-09-05 Johannes Kanig <kanig@adacore.com> |
| |
| * lib-xref-alfa.adb: Update comments. |
| |
| 2011-09-05 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_res.adb: Minor reformatting |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb (Build_In_Place_Formal): If extra formals are not |
| present, create them now. Needed in case the return type was |
| a limited view in the function declaration. |
| (Make_Build_In_Place_Call_In_Allocator): If return type contains |
| tasks, build the activation chain for it. Pass a reference to |
| the Master_Id in call to Add_Task_Actuals_To_Build_In_Place call. |
| * exp_ch7.adb (Make_Set_Finalize_Address_Call): Clean up interface |
| with build_in_place calls. |
| * sem_ch9.adb (Analyze_Task_Type_Declaration): If partial view was |
| incomplete, inatialize its Corresponding_Record_Type component. |
| * sem_ch10.adb (Build_Chain): Initialize Private_Dependents field |
| of limited views. |
| |
| 2011-09-05 Johannes Kanig <kanig@adacore.com> |
| |
| * lib-xref-alfa.adb (Is_Alfa_Reference): Filter constants from effect |
| information. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch6.adb (P_Subprogram): In Ada2012 mode, if the subprogram |
| appears within a package specification and the token after "IS" |
| is not a parenthesis, assume that this is an unparenthesized |
| expression function, even if the token appears in a line by |
| itself. |
| * par.adb: Clarify use of Labl field of scope stack in error |
| recovery. |
| |
| 2011-09-05 Bob Duff <duff@adacore.com> |
| |
| * sem_res.adb (Resolve_Intrinsic_Operator): Use unchecked |
| conversions instead of normal type conversions in all cases where a |
| type conversion would be illegal. In particular, use unchecked |
| conversions when the operand types are private. |
| |
| 2011-09-05 Johannes Kanig <kanig@adacore.com> |
| |
| * lib-xref-alfa.adb (Is_Alfa_Reference): Never declare effects on |
| objects of task type or protected type. |
| |
| 2011-09-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Expression_Function): If the expression |
| function comes from source, indicate that so does its rewriting, |
| so it is compatible with any subsequent expansion of the |
| subprogram body (e.g. when it is a protected operation). |
| * sem_ch4.adb: minor reformatting |
| |
| 2011-09-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * lib.adb (Check_Same_Extended_Unit): Comment rewriting. Use |
| Get_Source_Unit rather than Get_Code_Unit as instantiation unfolding |
| may lead to wrong ancestor package in the case of instantiated subunit |
| bodies. If a subunit is instantiated, follow the chain of instantiations |
| rather than the stub structure. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch4.adb, sem_ch6.adb: Minor reformatting. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-09-02 Marc Sango <sango@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): Change |
| comment and add additional check to differentiate constant of |
| type string from others unconstrained type. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sinfo.ads, sinfo.adb: New semantic attribute Premature_Use, |
| present in incomplete type declarations to refine the error |
| message the full declaration is in the same unit. |
| * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of |
| an incomplete type, set the Premature_Use for additional message. |
| * sem_ch3.adb (Find_Type_Name): If partial view is incomplete |
| and Premature_Use is set, place additional information at the |
| point of premature use. |
| |
| 2011-09-02 Bob Duff <duff@adacore.com> |
| |
| * sem_ch6.adb: (Check_Post_State): Suppress warning |
| "postcondition refers only to pre-state" when the expression has not |
| yet been analyzed, because it causes false alarms. This can happen when |
| the postcondition contains a quantified expression, because those are |
| analyzed later. This is a temporary/partial fix. |
| (Process_Post_Conditions): Minor: change wording of warning. |
| |
| 2011-09-02 Marc Sango <sango@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): Detect the violation of |
| illegal use of unconstrained string type in SPARK mode. |
| * sem_res.adb (Analyze_Operator_Symbol): Set the |
| right place where the string operand of concatenation should be |
| violate in SPARK mode. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb, sem_util.adb, sem_ch6.adb, prj-nmsc.adb, |
| exp_ch3.adb: Minor reformatting. |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Add_Default_GNAT_Naming_Scheme): Declare "gcc" |
| as the compiler driver so Is_Compilable returns True for sources. |
| * prj-nmsc.adb (Override_Kind): When Kind is Sep, set the source |
| for the body. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_PPC_In_Decl_Part): for a class-wide |
| condition, a reference to a controlling formal must be interpreted |
| as having the class-wide type (or an access to such) so that the |
| inherited condition can be properly applied to any overriding |
| operation (see ARM12 6.6.1 (7)). |
| |
| 2011-09-02 Tristan Gingold <gingold@adacore.com> |
| |
| * init.c (__gnat_is_vms_v7): Fix case and add prototype |
| for LIB$GETSYI. |
| |
| 2011-09-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Do not copy the |
| initializing expression of a class-wide interface object declaration |
| if its type is limited. |
| |
| 2011-09-02 Johannes Kanig <kanig@adacore.com> |
| |
| * sem_util.adb (Unique_Name): To obtain a unique name for enumeration |
| literals, take into account the type name; the type is *not* |
| the scope for an enumeration literal. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Check_Overriding_Indicator): add special check |
| to reject an overriding indicator on a user-defined Adjust |
| subprogram for a limited controlled type. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Actuals): add missing call to Resolve |
| for an actual that is a function call returning an unconstrained |
| limited controlled type. |
| |
| 2011-09-02 Tristan Gingold <gingold@adacore.com> |
| |
| * g-socthi-vms.adb (c_sendmsg, c_recvmsg): Use unpacked msg if on vms 7 |
| |
| 2011-09-02 Johannes Kanig <kanig@adacore.com> |
| |
| * alfa.ads (Name_Of_Heap_Variable): Change value of the HEAP variable |
| from "HEAP" to __HEAP Change comment that refers to that variable |
| * put_alfa.adb: Change comment that refers to that variable |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb, exp_ch6.adb, prj-nmsc.adb: Minor reformatting. |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Extract_Renamed_Object): Renamed to |
| Find_Renamed_Object. This routine has been reimplemented and now uses |
| tree traversal to locate a renamed object. |
| (Is_Aliased): Replace call to Extract_Renamed_Object with |
| Find_Renamed_Object. |
| |
| 2011-09-02 Tristan Gingold <gingold@adacore.com> |
| |
| * init.c: (__gnat_is_vms_v7): New function. |
| |
| 2011-09-02 Olivier Hainque <hainque@adacore.com> |
| |
| * tracebak.c (STOP_FRAME, ppc elf/vxworks case): Stop on frames |
| that have a misaligned backchain, necessarily bogus. |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Expand_Freeze_Class_Wide_Type): Do not create |
| TSS routine Finalize_Address when compiling in Alfa mode. |
| (Expand_Freeze_Record_Type): Do not create TSS routine |
| Finalize_Address when compiling in Alfa mode. |
| * exp_ch4.adb (Expand_Allocator_Expression): Do not produce a |
| call to Set_Finalize_Address in Alfa mode because Finalize_Address is |
| not built. |
| (Expand_N_Allocator): Do not produce a call to |
| Set_Finalize_Address in Alfa mode because Finalize_Address is not built. |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Do not |
| produce a call to primitive Set_Finalize_Address in Alfa mode because |
| Finalize_Address is not built. |
| * exp_ch7.adb (Build_Finalization_Master): Do not create |
| finalization masters in Afa mode since they are not needed. |
| (Build_Finalizer): Do not create scope and library-level |
| finalizers in Alfa mode since they are not needed. |
| * exp_util.adb (Build_Allocate_Deallocate_Proc): Do not expand |
| "new" and "free" when applied to controlled objects in Alfa mode since |
| this is not needed. |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.db: (Check_Stand_Alone_Library): For SALs, allow |
| only library names with the syntax of Ada identifiers, to avoid errors |
| when compiling the binder generated files. |
| * projects.texi: Document restriction on SAL library names |
| |
| 2011-09-02 Thomas Quinot <quinot@adacore.com> |
| |
| * a-chtgbo.adb: Minor comment fix. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * lib-xref.adb: Minor reformatting |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * bindusg.adb, clean.adb, gnatchop.adb, gnatfind.adb, gnatlink.adb, |
| gnatls.adb, gnatname.adb, gnatxref.adb, gprep.adb, makeusg.adb: Add |
| --version and --help in usage. |
| * switch.ads, switch.adb (Display_Usage_Version_And_Help): New procedure |
| |
| 2011-09-02 Bob Duff <duff@adacore.com> |
| |
| * lib-xref.adb: (Hash): Avoid use of 'Mod attribute, because old |
| compilers don't understand it. |
| |
| 2011-09-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference): Pass the |
| underlying subtype rather than its base type on the call to |
| Build_Record_Or_Elementary_Input_Function, so that any |
| constraints on a discriminated subtype will be available for |
| doing the check required by AI05-0192. |
| * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): |
| If the prefix subtype of the 'Input attribute is a constrained |
| discriminated subtype, then check each constrained discriminant value |
| against the corresponding value read from the stream. |
| |
| 2011-09-02 Yannick Moy <moy@adacore.com> |
| |
| * usage.adb, warnsw.adb, sem_ch6.adb, opt.ads: Disable by default |
| warnings on suspicious contracts, and enable them with -gnatwa. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb, exp_ch9.adb, sem_attr.adb, sem_ch6.adb: Minor |
| reformatting. |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch9.adb (Install_Private_Data_Declarations): Add guards |
| which ensure that restriction No_Dynamic_Attachment has not been |
| violated. |
| (Make_Initialize_Protection): Protected types with attach or |
| interrupt handlers must not violate restriction No_Dynamic_Attachment. |
| * exp_util.adb (Corresponding_Runtime_Package): Add a guard |
| which ensures that restriction No_Dynamic_Attachment has not been |
| violated. |
| * sem_attr.adb: (Eval_Attribute): Transform |
| VAX_Float_Type'First and 'Last into references to |
| the temporaries which store the corresponding bounds. The |
| transformation is needed since the back end cannot evaluate |
| 'First and 'Last on VAX. |
| (Is_VAX_Float): New routine. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Subprogram_Instantiation): If the |
| generic unit is not intrinsic and has an explicit convention, |
| the instance inherits it. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * prj-dect.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, prj-tree.adb, |
| prj.adb, prj.ads, sem_ch5.adb: Minor reformatting. |
| |
| 2011-09-02 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute, case Unrestriced_Access): |
| Guard against a prefix that is an N_Has_Entity but has no |
| associated entity. |
| |
| 2011-09-02 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Is_Alfa_Reference): Ignore IN parameters in Alfa |
| references. |
| |
| 2011-09-02 Yannick Moy <moy@adacore.com> |
| |
| * opt.ads (Warn_On_Suspicious_Contract): New warning flag. |
| * sem_ch3.adb (Analyze_Declarations): Call checker for suspicious |
| contracts. |
| * sem_ch6.adb, sem_ch6.ads (Check_Subprogram_Contract): New |
| procedure looking for suspicious postconditions. |
| * usage.adb (Usage): New options -gnatw.t and -gnatw.T. |
| * warnsw.adb (Set_Dot_Warning_Switch): Take into account new |
| options -gnatw.t and -gnatw.T. |
| |
| 2011-09-02 Pascal Obry <obry@adacore.com> |
| |
| * prj.adb: Minor code refactoring. Move check for null project in |
| Project_Changed. |
| * projects.texi: Fix minor typos. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iterator_Specification): If the domain |
| of iteration is an expression, its value must be captured in a |
| renaming declaration, so that modification of the elements is |
| propagated to the original container. |
| |
| 2011-09-02 Pascal Obry <obry@adacore.com> |
| |
| * prj-proc.adb, prj.adb, makeutl.adb, makeutl.ads, prj-dect.adb, |
| prj-nmsc.adb, prj-util.adb, prj-conf.adb, prj-env.adb, |
| prj-tree.adb: Minor reformatting and style fixes. |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * s-rident.ads: Add new restriction No_Implicit_Aliasing |
| * sem_attr.adb: (Analyze_Access_Attribute): Deal with |
| No_Implicit_Aliasing |
| (Analyze_Attribute, case Address): ditto |
| (Analyze_Attribute, case Unrestricted_Access): ditto |
| * sem_util.ads, sem_util.adb: (Is_Aliased_View): Handle |
| No_Implicit_Aliasing restriction. |
| * gnat_rm.texi: Add documentation for No_Implicit_Aliasing |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_util.adb: (Possible_Bit_Aligned_Object): If the object |
| is an unchecked conversion, apply test to its expression. |
| |
| 2011-09-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Check_Abstract_Overriding): When |
| traversing the chain of aliased subprograms avoid reporting a |
| redundant error on the current entity. |
| |
| 2011-09-02 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_ugn.texi: Minor clean up. |
| |
| 2011-09-02 Bob Duff <duff@adacore.com> |
| |
| * s-htable.adb (Set_If_Not_Present): Use renaming |
| instead of ":=", because the type Key is limited in the generic (even |
| if not in the instances). |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb, sem_ch10.adb, sem_attr.adb, s-htable.adb, |
| g-comlin.adb, g-comlin.ads, lib-xref-alfa.adb, lib-xref.adb: Minor |
| reformatting. |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch3.adb: (Set_Anonymous_Type): Associate the itype of an |
| inherited component with the enclosing derived type. Code reformatting. |
| |
| 2011-09-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * checks.adb: (Determine_Range): Add test of OK1 to prevent the early |
| return done when overflow checks are enabled, since comparisons against |
| Lor and Hir should not be done when OK1 is False. |
| |
| 2011-09-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch6.adb (Add_Finalization_Master_Actual_To_Build_In_Place_Call): |
| Add new formal Master_Exp. When present, add that expression to the |
| call as an extra actual. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Add variable |
| Fmaster_Actual and in the case of a BIP call initializing a return |
| object of an enclosing BIP function set it to a |
| new reference to the implicit finalization master |
| formal of the enclosing function. Fmaster_Actual is |
| then passed to the new formal Master_Exp on the call to |
| Add_Finalization_Master_Actual_To_Build_ In_Place_Call. Move |
| initializations of Enclosing_Func to its declaration. |
| |
| 2011-09-02 Thomas Quinot <quinot@adacore.com> |
| |
| * csets.ads: Minor reformatting |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_aggr.adb: (Get_Constraint_Association): Add code to retrieve |
| the full view of a private type coming from an instantiation. |
| * exp_ch4.adb: (Current_Anonymous_Master): Reimplement the search |
| loop to iterate over the declarations rather than use the |
| First_Entity / Next_Entity scheme. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb: (Analyze_Attribute, case 'Range): when expanding |
| X'range (N) into X'First (N) .. X'Last (N), do not share the |
| dimension indicator N, if present. Even though it is a static |
| constant, its source location may be modified when printing |
| expanded code under -gnatDL, and node sharing will lead to chaos |
| in Sprint on large files, by generating a sloc value that does |
| not correspond to any source file. |
| |
| 2011-09-02 Bob Duff <duff@adacore.com> |
| |
| * einfo.adb: (Has_Xref_Entry): Do not call |
| Implementation_Base_Type. Lib.Xref has been |
| rewritten to avoid the need for it, and it was costly. |
| * s-htable.ads,s-htable.adb: (Present,Set_If_Not_Present): New |
| functions in support of efficient xref. |
| * lib-xref-alfa.adb: Misc changes related to Key component of |
| type Xref_Entry. |
| * lib-xref.adb: (Add_Entry,etc): Speed improvement. |
| (New_Entry): Call Implementation_Base_Type, because Has_Xref_Entry |
| no longer does. This is the one place where it is needed. |
| |
| 2011-09-02 Johannes Kanig <kanig@adacore.com> |
| |
| * g-comlin.adb (Getopt): New optional argument Concatenate to have |
| similar interface as the other Getopt function. |
| |
| 2011-09-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb: (Expand_Allocator_Expression): Do not generate |
| a call to Set_Finalize_Address if there is no allocator available. |
| * exp_util.adb: (Build_Allocate_Deallocate_Proc): Account for |
| a case of allocator expansion where the allocator is not expanded but |
| needs a custom allocate routine. Code reformatting. |
| (Is_Finalizable_Transient): Remove local variables Has_Rens and |
| Ren_Obj. Code reformatting. |
| (Is_Renamed): Renamed to Is_Aliased. Add code to detect aliasing |
| through the use of 'reference. |
| * sem_ch4.adb: (Analyze_Allocator): Detect allocators generated |
| as part of build-in-place expansion. They are intentionally marked as |
| coming from source, but their parents are not. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch10.adb (Analyze_With_Clause): If the library unit |
| is the generated subprogram declaration for a child unit body |
| that acts as spec, use the original body in the with_clause, |
| to prevent binding errors. |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * gnat_ugn.texi: Adapt documentation of -gnateInnn to new VMS |
| qualifier /MULTI_UNIT_INDEX= |
| |
| 2011-09-02 Johannes Kanig <kanig@adacore.com> |
| |
| * g-comlin.adb (Getopt): Return when switch is dealt with automatically, |
| instead of calling the callback function |
| |
| 2011-09-02 Robert Dewar <dewar@adacore.com> |
| |
| * prj-proc.adb, prj.ads, sem_util.adb, s-taprop-linux.adb, |
| prj-nmsc.adb, prj-util.ads, prj-env.adb: Minor reformatting. |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb: (Find_Sources): When the list of sources is |
| explicitly declared in an extending project, do not warn if a source |
| for an inherited naming exception is not found. |
| |
| 2011-09-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch6.adb: (Is_Build_In_Place_Function_Call): Return False if |
| expansion is inactive. |
| |
| 2011-09-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb (Note_Possible_Modification): If the entity |
| being modified is the renaming generated for an Ada2012 iterator |
| element, the enclosing container or array is modified as well. |
| |
| 2011-09-02 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-linux.adb (Initialize_Lock, Initialize_TCB, |
| Initialize): Define and initialize the |
| mutex attributes and condition variable attributes locally. |
| |
| 2011-09-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Check_File): Mark as Locally_Removed a naming |
| exception replaced in an extending project. |
| (Check_Object): No error when the other source is locally removed. |
| |
| 2011-09-02 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch6.adb (Is_Build_In_Place_Function_Call): in Alfa mode, allow |
| unresolved calls. |
| |
| 2011-08-31 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in: Clean up handling of x86 and x86-64 |
| run-time files. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, s-taprop-linux.adb, gnatls.adb: Minor reformatting. |
| |
| 2011-09-01 Jose Ruiz <ruiz@adacore.com> |
| |
| * adaint.h (__gnat_cpu_free): Fix the name of this profile. |
| * adaint.c (__gnat_cpu_alloc, __gnat_cpu_alloc_size, __gnat_cpu_free, |
| __gnat_cpu_zero, __gnat_cpu_set): Create version of these subprograms |
| specific for systems where their glibc version does not define the |
| routines to handle dynamically allocated CPU sets. |
| |
| 2011-09-01 Vincent Celier <celier@adacore.com> |
| |
| * prj-proc.adb, prj.ads, prj-nmsc.adb, prj-util.adb, prj-util.ads, |
| prj-env.adb: Implement inheritance of naming exceptions in extending |
| projects. |
| |
| 2011-09-01 Romain Berrendonner <berrendo@adacore.com> |
| |
| * gnatls.adb: Display simple message instead of content of |
| gnatlic.adl. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch3.adb: (Build_Derived_Record_Type) Remove the kludgy update of |
| access discriminant and anonymous access component scopes. |
| (Inherit_Component): Reuse the itype of an access discriminant |
| or anonymous access component by copying it in order to set the proper |
| scope. This is done only when the parent and the derived type |
| are in different scopes. |
| (Set_Anonymous_Etype): New routine. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * a-convec.adb: Minor reformatting throughout. |
| |
| 2011-09-01 Jose Ruiz <ruiz@adacore.com> |
| |
| * adaint.c, adaint.h (__gnat_cpu_alloc, __gnat_cpu_alloc_size, |
| __gnat_cpu_set_free): Create these wrappers around the CPU_ALLOC, |
| CPU_ALLOC_SIZE and CPU_FREE linux macros. |
| (__gnat_cpu_zero, __gnat_cpu_set): Use the CPU_ZERO_S and |
| CPU_SET_S respectively because we are now using dynamically allocated |
| CPU sets which are more portable across different glibc versions. |
| * s-osinte-linux.ads (cpu_set_t_ptr, CPU_ALLOC, CPU_ALLOC_SIZE, |
| CPU_FREE): Add this type and subprograms to be able to create cpu_set_t |
| masks dynamically according to the number of processors in the target |
| platform. |
| (CPU_ZERO, CPU_SET): They are now mapped to the CPU_ZERO_S and CPU_SET_S |
| respectively, so we need to pass the size of the masks as |
| parameters. |
| * s-taprop-linux.adb (Create_Task, Set_Task_Affinity): Use dynamically |
| created cpu_set_t masks |
| with the number of processors available in the target platform, |
| instead of static bit arrays. It enhances portability because |
| it uses the information from the target platform. |
| * sem_ch8.adb: (Attribute_Renaming): When checking whether we |
| are using a restricted run-time library, use the flag |
| Configurable_Run_Time_Mode instead of Restricted_Profile. |
| |
| 2011-09-01 Vincent Celier <celier@adacore.com> |
| |
| * ug_words: Add /MULTI_UNIT_INDEX= -> -gnateI |
| * vms_data.ads: Add new VMS qualifier equivalent for -gnateInnn |
| |
| 2011-09-01 Nicolas Roche <roche@adacore.com> |
| |
| * adaint.c (__gnat_tmp_name): Don't use tmpnam function from the system |
| on VxWorks in kernel mode. |
| |
| 2011-09-01 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-linux.adb (Create_Task, Set_Task_Affinity): Use the linux |
| macros for handling CPU sets (CPU_ZERO, CPU_SET) instead of modifying |
| directly the bit array. |
| * s-osinte-linux.ads (CPU_ZERO, CPU_SET): Import these wrappers around |
| the linux macros with the same name. |
| * adaint.h, adaint.c (__gnat_cpu_zero, __gnat_cpu_set): Create these |
| wrappers around the CPU_ZERO and CPU_SET linux macros. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Find_Insertion_List): Removed. |
| (Process_Transient_Objects): Insert the declarations of the hook |
| access type and the hook object before the associated transient object. |
| |
| 2011-09-01 Jose Ruiz <ruiz@adacore.com> |
| |
| * sem_ch8.adb (Attribute_Renaming): Add missing check to avoid loading |
| package System.Aux_Dec when using restricted run-time libraries which |
| do not have this package. |
| |
| 2011-09-01 Tristan Gingold <gingold@adacore.com> |
| |
| * s-vaflop-vms-alpha.adb: Remove pragma optimize, useless. |
| |
| 2011-09-01 Bob Duff <duff@adacore.com> |
| |
| * sem_attr.adb (Analyze_Access_Attribute): Do not call |
| Kill_Current_Values for P'Unrestricted_Access, where P is library level |
| |
| 2011-09-01 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch5.adb: Minor reformatting |
| * gnat_ugn.texi: Fix minor typos. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * inline.adb, sem_aggr.adb: Minor reformatting. |
| |
| 2011-09-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-convec.adb: Proper handling of cursors for Ada2012 iterators. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * prj-proc.adb, exp_ch6.adb, prj-env.adb: Minor reformatting. |
| |
| 2011-09-01 Bob Duff <duff@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): Need to treat "in instance |
| body" the same as "in inlined body", because visibility shouldn't |
| apply there. |
| |
| 2011-09-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * inline.adb (Add_Inlined_Body): Refine previous change. |
| |
| 2011-09-01 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch6.ads (Needs_BIP_Alloc_Form): New utility function. |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): |
| Test for case where call |
| initializes an object of a return statement before testing for |
| a constrained call, to ensure that all such cases get handled |
| by simply passing on the caller's parameters. Also, in that |
| case call Needs_BIP_Alloc_Form to determine whether to pass on |
| the BIP_Alloc_Form parameter of the enclosing function rather |
| than testing Is_Constrained. Add similar tests for the return |
| of a BIP call to later processing to ensure consistent handling. |
| (Needs_BIP_Alloc_Form): New utility function. |
| * sem_ch6.adb: (Create_Extra_Formals): Replace test for adding |
| a BIP_Alloc_Form formal with call to new utility function |
| Needs_BIP_Alloc_Form. |
| |
| 2011-09-01 Pascal Obry <obry@adacore.com> |
| |
| * prj-part.adb: Minor reformatting. |
| |
| 2011-09-01 Vincent Celier <celier@adacore.com> |
| |
| * prj-env.adb (Create_Mapping_File.Process): Encode the upper |
| half character in the unit name. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb: Minor code and comment reformatting. |
| |
| 2011-09-01 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch6.adb (Expand_Inlined_Call): Remove redundant tests |
| for Is_Limited_Type and Is_Tagged_Type in condition checking |
| for by-reference type. |
| * inline.adb (Add_Inlined_Body): Only exclude init_procs. Other |
| subprograms may have a completion because of a previous |
| Inline_Always clause, but the enclosing package must be marked |
| inlined for the subprogram body to become visible to the backend. |
| |
| 2011-09-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_aux.adb, exp_ch4.adb: Minor reformatting |
| |
| 2011-09-01 Pascal Obry <obry@adacore.com> |
| |
| * prj-proc.adb, prj.ads, sinput-p.adb: Minor reformatting. |
| |
| 2011-09-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Generate references to |
| the formals of a subprogram stub that acts as a spec. |
| |
| 2011-09-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch6.adb (Expand_Inlined_Call): If an actual is a by_reference |
| type, declare a renaming for it, not an object declaration. |
| |
| 2011-09-01 Yannick Moy <moy@adacore.com> |
| |
| * ali-util.adb, ali-util.ads (Read_Withed_ALIs): Add parameter |
| Ignore_Errors to ignore failures to read ALI files when True. |
| |
| 2011-09-01 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Handle non-default |
| constructor calls associated with non-tagged record types. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * g-socthi-vms.adb: Minor reformatting. |
| |
| 2011-09-01 Nicolas Roche <roche@adacore.com> |
| |
| * sysdep.c: Don't use macro functions for stdio functions on VxWorks |
| in order to avoid impact of imcompatible changes. |
| * cstreams.c: Likewise |
| * cio.c: Likewise |
| * aux-io.c: Likewise |
| |
| 2011-09-01 Yannick Moy <moy@adacore.com> |
| |
| * lib-writ.adb (Write_With_Lines): Always output complete information |
| on "with" line in Alfa mode, as this is required by formal verification |
| back-end. |
| |
| 2011-09-01 Tristan Gingold <gingold@adacore.com> |
| |
| * g-socthi-vms.adb: Add comments. |
| |
| 2011-09-01 Pascal Obry <obry@adacore.com> |
| |
| * prj.ads: Minor reformatting. |
| |
| 2011-09-01 Vincent Celier <celier@adacore.com> |
| |
| * prj-env.adb (Create_Config_Pragmas_File.Check): Put all naming |
| exceptions in the config pragmas file. |
| |
| 2011-09-01 Tristan Gingold <gingold@adacore.com> |
| |
| * gnat_ugn.texi: Document GNAT_STACK_SIZE on IVMS. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Find_Insertion_List): New routine. |
| (Process_Transient_Objects): Add code to handle the abnormal |
| finalization of a controlled transient associated with a subprogram |
| call. Since transients are cleaned up right after the associated |
| context, an exception raised during a subprogram call may bypass the |
| finalization code. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch6.adb (Expand_Call): Check actual for aliased parameter is |
| aliased. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb, a-exexda.adb: Minor reformatting. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * s-taskin.ads, s-tassta.adb, sem_ch13.adb: Minor reformatting. |
| |
| 2011-09-01 Thomas Quinot <quinot@adacore.com> |
| |
| * Makefile.rtl: Move s-oscons.o from GNATRTL_TASKING_OBJS to |
| GNATRTL_NONTASKING_OBJS. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.ads (Is_Aliased): Fix existing documentation and add note on |
| possibility of this flag being set for formals in Ada 2012 mode. |
| * par-ch6.adb (P_Formal_Part): Handle aliased for parameters for Ada |
| 2012. |
| * sem_ch6.adb (Process_Formals): Handle aliased parameters in Ada 2012 |
| mode. |
| * sinfo.adb (Aliased_Present): Allowed in N_Parameter_Specification for |
| Ada 2012. |
| * sinfo.ads (Aliased_Present): Allowed in N_Parameter_Specification for |
| Ada 2012. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Find_Insertion_Node): New routine. Determines the proper |
| insertion node in a tree of nested Expression_With_Actions nodes. |
| (Process_Transient_Object): In the case where a complex if statement |
| has been converted into nested Expression_With_Actions nodes, the |
| "hook" object and the associated access type must be inserted before |
| the top most Expression_With_Actions. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbprqu.adb, a-cbprqu.ads, a-cuprqu.adb, a-cuprqu.ads, |
| a-cbsyqu.adb, a-cbsyqu.ads: Minor reformatting. |
| |
| 2011-09-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb: Conditionalize aliasing predicates to Ada2012. |
| |
| 2011-09-01 Jose Ruiz <ruiz@adacore.com> |
| |
| * aspects.ads (Aspect_Id, Aspect_Argument, Aspect_Names): Add the CPU |
| aspect. |
| * aspects.adb (Canonical_Aspect): Add entry for the CPU aspect. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Analyze the CPU aspect |
| in a similar way as we do for the Priority or Dispatching_Domain aspect. |
| * s-mudido-affinity.adb (Dispatching_Domain_Tasks, |
| Dispatching_Domains_Frozen): Move this local data to package |
| System.Tasking because with the CPU aspect we need to have access |
| to this data when creating the task in System.Tasking.Stages.Create_Task |
| * s-taskin.ads (Dispatching_Domain_Tasks, Dispatching_Domains_Frozen): |
| Move these variables from the body of |
| System.Multiprocessors.Dispatching_Domains because with the CPU aspect |
| we need to have access to this data when creating the task in |
| System.Tasking.Stages.Create_Task. |
| * s-taskin.adb (Initialize): Signal the allocation of the environment |
| task to a CPU, if any, so that we know whether the CPU can be |
| transferred to a different dispatching domain. |
| * s-tassta.adb (Create_Task): Check whether the CPU to which this task |
| is being allocated belongs to the dispatching domain where the task |
| lives. Signal the allocation of the task to a CPU, if any, so that we |
| know whether the CPU can be transferred to a different dispatching |
| domain. |
| |
| 2011-09-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_attr.adb, sem_attr.adb, snames.ads-tmpl: Implementation of |
| attributes Same_Storage and Overlaps_Storage. |
| |
| 2011-09-01 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_strm.adb: Remove with and use clause for Opt. |
| (Build_Array_Input_Function): Remove the version-dependent generation |
| of the return statement. The Ada 2005 tree is now the default. |
| |
| 2011-09-01 Yannick Moy <moy@adacore.com> |
| |
| * put_alfa.adb: Unconditionnally write files in Alfa section, so that |
| it is never empty when compiling in Alfa mode. |
| |
| 2011-09-01 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb, sem_ch3.adb, a-direct.adb, s-taprop-vxworks.adb, |
| comperr.adb, exp_ch9.adb, exp_pakd.adb, sem_ch12.adb, freeze.adb, |
| s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb, |
| gnat1drv.adb, a-rbtgbo.adb, exp_dist.adb: Minor reformatting |
| |
| 2011-09-01 Matthew Heaney <heaney@adacore.com> |
| |
| * Makefile.rtl, impunit.adb: Add a-csquin.ads, a-cusyqu.ad[sb], |
| a-cuprqu.ad[sb], a-cbsyqu.ad[sb], a-cbprqu.ad[sb] |
| * a-csquin.ads: New Ada 2012 unit that specifies the queue interface |
| * a-cusyqu.ads, a-cusyqu.adb: New Ada 2012 unit that specifies the |
| unbounded queue container. |
| * a-cbsyqu.ads, a-cbsyqu.adb: New Ada 2012 unit that specifies the |
| bounded queue container. |
| * a-cuprqu.ads, a-cuprqu.adb: New Ada 2012 unit that specifies the |
| unbounded priority queue container. |
| * a-cbprqu.ads, a-cbprqu.adb: New Ada 2012 unit that specifies the |
| bounded priority queue container. |
| |
| 2011-08-31 Pascal Obry <obry@adacore.com> |
| |
| * a-direct.adb: Do not try to create an UNC path on Windows. |
| (Create_Path): Skip leading computer name in UNC path if any. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): Remove the |
| version-dependent generation of the return statement. The Ada 2005 tree |
| is now the default. |
| |
| 2011-08-31 Thomas Quinot <quinot@adacore.com> |
| |
| * rtsfind.ads, exp_dist.adb (Find_Numeric_Representation): Predefined |
| types Stream_Element_Offset and Storage_Offset have a different native |
| type depending on whether the platform is 32 or 64 bits. When |
| exchanging them, always convert to 64 bits. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * debug.adb: Reserve debug option -gnatd.E for passing gnatprove option |
| --force-alfa to gnat2why. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Save_References): If the node has aspects, save |
| references within the corresponding expressions in a separate step, |
| because the aspects are not directly in the tree for the declaration |
| to which they belong. |
| |
| 2011-08-31 Arnaud Charlet <charlet@adacore.com> |
| |
| * freeze.adb (Freeze_Record_Type): Omit test on variable size component |
| in CodePeer mode, since representation clauses are partially ignored. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-vxworks.adb, s-taprop-mingw.adb, s-taprop-linux.adb, |
| s-taprop-solaris.adb (Create_Task): Not_A_Specific_CPU can be assigned |
| to any dispatching domain. |
| |
| 2011-08-31 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch4.adb: Minor reformatting. |
| |
| 2011-08-31 Bob Duff <duff@adacore.com> |
| |
| * sem_ch6.adb (Get_Generic_Parent_Type): Don't query Subtype_Indication |
| on nodes for which it is not defined. |
| (Is_Non_Overriding_Operation): Exit the loop when we find a generic |
| parent type. |
| |
| 2011-08-31 Bob Duff <duff@adacore.com> |
| |
| * sem_ch3.adb (Process_Full_View): Disable legality check if |
| In_Instance, to avoid spurious errors. |
| * sem_ch12.adb (Validate_Derived_Type_Instance): Disable legality check |
| if In_Instance, to avoid spurious errors. |
| |
| 2011-08-31 Pascal Obry <obry@adacore.com> |
| |
| * a-direct.adb: Use Dir_Seps everywhere to properly handle all |
| directory speparators. |
| (Compose): Use Dir_Seps to handle both forms. |
| (Create_Path): Use Dir_Seps instead of explicit check, no semantic |
| changes. |
| (Extension): Use Dir_Seps to handle both forms. |
| |
| 2011-08-31 Pascal Obry <obry@adacore.com> |
| |
| * prj-conf.adb: Minor reformatting. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * aspects.ads (Aspect_Id, Aspect_Argument, Aspect_Names): Add the |
| dispatching domain aspect. |
| * aspects.adb (Canonical_Aspect): Add entry for the dispatching domain |
| aspect. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Analyze the |
| Dispatching_Domain aspect in a similar way as we do for the Priority |
| aspect. |
| * exp_ch9.adb (Expand_N_Task_Type_Declaration): Add the |
| Dispatching_Domain component if a Dispatching_Domain pragma or aspect |
| is present. |
| (Make_Task_Create_Call): Add the Dispatching_Domain when creating a task |
| * par-prag.adb (Prag): Add Pragma_Dispatching_Domain as a known pragma. |
| * sem_prag.adb (Analyze_Pragma): Check the correctness of a pragma |
| Dispatching_Domain and add it to the task definition. |
| (Sig_Flags): Add Pragma_Dispatching_Domain. |
| * rtsfind.ads, rtsfind.adb (RTU_Id, RE_Id, Get_Unit_Name): Add the |
| support to find the types Dispatching_Domain and |
| Dispatching_Domain_Access. |
| * sinfo.ads, sinfo.adb (Has_Pragma_Dispatching_Domain, |
| Set_Has_Pragma_Dispatching_Domain): Add these subprograms to set and |
| query the availability of a pragma Dispatching_Domain. |
| * snames.ads-tmpl (Name_uDispatching_Domain): Add this name required by |
| the expander to pass the Dispatching_Domain when creating a task. |
| (Name_Dispatching_Domain): Add this new name for a pragma. |
| (Pragma_Id): Add the new Pragma_Dispatching_Domain. |
| * s-tassta.ads, s-tassta.adb (Create_Task): Set the domain to which the |
| task has been allocated at creation time. |
| * s-tarest.adb (Create_Restricted_Task): The dispatching domain using |
| Ravenscar is always null. |
| * s-taskin.ads, s-taskin.adb (Initialize_ATCB): Set the domain to which |
| the task has been allocated at creation time. |
| * s-tporft.adb (Register_Foreign_Thread): A foreign task will not have |
| a specific dispatching domain. |
| * s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-vxworks.adb, |
| s-taprop-mingw.adb (Create_Task): Check whether both Dispatching_Domain |
| and CPU are specified for the task, and the CPU value is not contained |
| within the range of processors for the domain. |
| |
| 2011-08-31 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Original_Gcc) : New constant String_Access. |
| (Gnatmake): For VM targets, do not use VM version of the compiler if |
| --GCC= has been specified. |
| |
| 2011-08-31 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch5.adb: Minor reformatting. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_pakd.adb (Convert_To_PAT_Type): If prefix is a function call, do |
| not reanalyze it. |
| |
| 2011-08-31 Bob Duff <duff@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Selected_Component): Use the full type, in case |
| the access type is private; we don't care about privacy in expansion. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): In an instance, ignore aggregate |
| subcomponents tnat may be limited, because they originate in view |
| conflicts. If the original aggregate is legal and the actuals are |
| legal, the aggregate itself is legal. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-rbtgbo.adb (Clear_Tree): Assert representation invariant for lock |
| status. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb: Set kind of loop parameter properly, to preserve all |
| errors in B tests. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): For the Priority and |
| Interrupt_Priority aspects, force the analysis of the aspect expression |
| (when building the equivalent pragma). Otherwise, its analysis is done |
| too late, after the task or protected object has been created. |
| * sem_ch9.adb (Analyze_Single_Protected_Declaration, |
| Analyze_Single_Task_Declaration): Remove the code to move the aspects |
| to the object declaration because they are needed in the type |
| declaration. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, exp_ch7.ads, sem_ch5.adb, put_scos.adb, s-rannum.adb, |
| a-rbtgbo.adb, exp_intr.adb, a-cbdlli.adb, a-cbdlli.ads: Minor |
| reformatting. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Find_Protection_Type): Do not look for fields _object |
| if the corresponding type is malformed due to restriction violations. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * s-ransee.ads, s-ransee.adb: Minor reformatting. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Allocator): Correct faulty condition which |
| would cause the generation of Set_Finalize_Address if the target is a |
| VM and the designated type is not derived from [Limited_]Controlled. |
| |
| 2011-08-31 Arnaud Charlet <charlet@adacore.com> |
| |
| * comperr.adb, comperr.ads, gnat1drv.adb (Delete_SCIL_Files): New |
| subprogram. |
| (Compiler_Abort, Gnat1drv): Call Delete_SCIL_Files in codepeer mode in |
| case of a compilation error. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * init.c (__gnat_error_handler): Standardize the stack overflow or |
| erroneous memory access message. |
| * seh_init.c (__gnat_SEH_error_handler): Standardize the stack overflow |
| or erroneous memory access message. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch4.adb: Minor reformatting. |
| * sem_ch6.adb: Minor code reorganization (use Ekind_In). |
| |
| 2011-08-31 Thomas Quinot <quinot@adacore.com> |
| |
| * scos.ads: Minor documentation clarification. |
| * put_scos.adb: Do not generate SCO unit header line for a unit that |
| has no SCO lines. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * a-rbtgbo.adb, alfa_test.adb: Minor reformatting. |
| |
| 2011-08-31 Tristan Gingold <gingold@adacore.com> |
| |
| * exp_ch7.ads, exp_ch7.adb (Finalization_Exception_Data): New type to |
| hold variables between these following subprograms. |
| (Build_Exception_Handler, Build_Object_Declarations, |
| Build_Raise_Statement): Use the above type as parameter. |
| Make the above adjustments. |
| * exp_intr.adb (Expand_Unc_Deallocation): Adjust. |
| |
| 2011-08-31 Pascal Obry <obry@adacore.com> |
| |
| * projects.texi: Minor reformatting. |
| |
| 2011-08-31 Tristan Gingold <gingold@adacore.com> |
| |
| * s-ransee.ads, s-ransee.adb: Add system.random_seed unit. |
| * s-rannum.adb (Reset): Use Get_Seed from s-ransee. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb: Minor code cleanup. |
| * sem_ch5.adb (Analyze_Iteration_Scheme): Set ekind of loop variable to |
| prevent cascaded errors. |
| (Analyze_Loop_Statement): In semantics-only mode, introduce loop |
| variable of an iterator specification in current scope. |
| * sem_ch6.adb (Analyze_Return_Statement, Find_what_It_Apples_To): Skip |
| postconditions on the stack, as they contain no return statements. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * exp_alfa.adb (Expand_Alfa_N_Package_Declaration, |
| Expand_Alfa_N_Subprogram_Body): Remove useless procedures which simply |
| call Qualify_Entity_Names. |
| (Expand_Alfa): call Qualify_Entity_Names in more cases |
| * lib-xref-alfa.adb: Take into account system package. |
| * sem_prag.adb Take into account restrictions in Alfa mode, contrary to |
| CodePeer mode in which we are interested in finding bugs even if |
| compiler cannot compile source. |
| * sem_util.adb, sem_util.ads (Unique_Entity): Take into account case of |
| deferred constant. |
| |
| 2011-08-31 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch3.adb (Constrain_Concurrent): Retrieve Base_Type of the subtype |
| denoted by the subtype mark to ensure getting the concurrent type in |
| the case where the subtype mark denotes a private subtype of a |
| concurrent type (needed when using -gnatc). |
| (Process_Subtype): For the processing specific to type kinds, case on |
| the Base_Type kind of the Subtype_Mark_Id, to handle cases where the |
| subtype denotes a private subtype whose base type is nonprivate (needed |
| for subtypes of private fulfilled by task types when compiling with |
| -gnatc). |
| |
| 2011-08-31 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_disp.adb (Check_Dispatching_Operation): Bypass registration of |
| late primitives that override interface operations when the full |
| expander is not active, to avoid blowups in Register_Primitive when |
| types don't have associated secondary dispatch tables. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * alfa_test.adb: Code clean up. |
| |
| 2011-08-31 Marc Sango <sango@adacore.com> |
| |
| * restrict.adb (Check_SPARK_Restriction): Change Comes_From_Source (N) |
| by Comes_From_Source (Original_Node (N)) in order to treat also the |
| nodes which have been rewritten. |
| * sem_ch4.adb (Analyze_Explicit_Dereference, Analyze_Slice): Guard the |
| explicit dereference and slice violation in spark mode on the nodes |
| coming only from the source code. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, exp_alfa.ads, prj.ads, sem_attr.adb, |
| lib-xref-alfa.adb: Minor reformatting. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-crbltr.ads (Tree_Type): Default-initialize the Nodes component. |
| |
| 2011-08-31 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch4.adb (Try_Object_Operation): Addition of one formal to search |
| only for class-wide subprograms conflicting with entities of concurrent |
| tagged types. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-rbtgbo.adb (Generic_Allocate): Initialize pointer components of |
| node to null value. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch12.adb (Insert_Freeze_Node_For_Instance): Provide a more |
| general description of the routine. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cbdlli.adb, a-cbdlli.ads: Add iterator machinery to bounded |
| doubly-linked lists. |
| |
| 2011-08-31 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Assignment_Statement): When a discriminant |
| check is needed for a left-hand side that is a dereference, and the |
| base type is private without discriminants (whereas the full type does |
| have discriminants), an extra retrieval of the underlying type may be |
| needed in the case where the subtype is a record subtype whose base |
| type is private. Update comments. |
| |
| 2011-08-31 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch4.adb (Try_Object_Operation): When a dispatching primitive is |
| found check if there is a class-wide subprogram covering the primitive. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb: Further cases where full expansion test is needed, |
| rather than expansion test. |
| |
| 2011-08-31 Pascal Obry <obry@adacore.com> |
| |
| * prj-attr.adb: Fix Source_File_Switches attribute kind (must be a list) |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb: Handle iterators over derived container types. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * einfo.ads, einfo.adb: Add new flag Has_Anonymous_Master. |
| (Has_Anonymous_Master): New routine. |
| (Set_Has_Anonymous_Master): New routine. |
| (Write_Entity_Flags): Add an entry for Has_Anonymous_Master. |
| * exp_ch4.adb: Add with and use clause for Sem_Ch8. |
| (Current_Anonymous_Master): New routine. |
| (Current_Unit_First_Declaration): Removed. |
| (Current_Unit_Scope): Removed. |
| (Expand_N_Allocator): Anonymous access-to-controlled types now chain |
| their objects on a per-unit heterogeneous finalization master. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbhama.adb, a-cbhase.adb (Insert): Check for zero-length buckets |
| array. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-linux.adb (Create_Task): Avoid changing the affinity mask |
| when not needed. |
| |
| 2011-08-31 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_disp.adb (Propagate_Tag): Return without propagating in the case |
| where the actual is an unexpanded call to 'Input. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch4.adb: Code clean up. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * exp_alfa.adb, exp_alfa.ads: Minor correction of copyright notice. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Array_Deep_Procs): Do not generate Deep_Finalize |
| and TSS primitive Finalize_Address if finalization is suppressed. |
| (Build_Record_Deep_Procs): Do not generate Deep_Finalize and TSS |
| primitive Finalize_Address if finalization is suppressed. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-mudido-affinity.adb, s-taprop-linux.adb, s-taprop-mingw.adb, |
| s-taprop-solaris.adb, s-taprop-vxworks.adb (Set_Task_Affinity): Make |
| sure that the underlying task has already been created before trying |
| to change its affinity. |
| (Set_CPU): Use the term processor instead of CPU, as we do in |
| Assign_Task. |
| |
| 2011-08-31 Vincent Celier <celier@adacore.com> |
| |
| * prj-attr.adb: New Compiler attribute Source_File_Switches. |
| * prj-nmsc.adb (Process_Compiler): Process attribute |
| Source_File_Switches. |
| * prj.ads (Language_Config): New name list component |
| Name_Source_File_Switches. |
| * snames.ads-tmpl (Name_Source_File_Switches): New standard name. |
| |
| 2011-08-31 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute, case 'Old): If prefix may be a |
| discriminated component of an actual, expand at once to prevent |
| ouf-of-order references with generated subtypes. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Add_Alfa_Xrefs): Do not take into account read |
| reference to operator in Alfa xrefs. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch12.adb (Freeze_Subprogram_Body): Add code to handle the case |
| where the parent instance was frozen before the current instance due to |
| the presence of a source body. Update calls to Insert_After_Last_Decl. |
| (Insert_After_Last_Decl): Renamed to Insert_Freeze_Node_For_Instance. |
| Update the comment which illustrates the purpose of the routine. |
| Package instances are now frozen by source bodies which appear after |
| the instance. This ensures that entities coming from within the |
| instance are available for use in the said bodies. |
| (Install_Body): Add code to handle the case where the parent instance |
| was frozen before the current instance due to the presence of a source |
| body. Update calls to Insert_After_Last_Decl. |
| |
| 2011-08-31 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-linux.adb (Set_Task_Affinity): Avoid the use of anonymous |
| access types. |
| * affinity.c (__gnat_set_affinity_mask): Declare index variable. |
| |
| 2011-08-31 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Subprogram_Renaming): Refine expander test in |
| full-expander test. |
| * alfa.adb, alfa.ads, alfa_test.adb, ali.adb, debug.adb, errout.adb, |
| errout.ads, erroutc.adb, expander.adb, exp_ch4.adb, exp_ch7.adb, |
| freeze.adb, get_alfa.adb, get_alfa.ads, gnat1drv.adb, lib-writ.adb, |
| lib-writ.ads, lib-xref.adb, lib-xref.ads, lib-xref-alfa.adb, opt.adb, |
| opt.ads, put_alfa.adb, put_alfa.ads, restrict.adb, sem_ch12.adb, |
| sem_ch13.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, |
| sem_prag.adb, sem_res.adb, sem_util.adb: Minor reformatting, renaming |
| ALFA in Alfa (we dropped acronym). |
| * einfo.adb (Primitive_Operations): Correctly return list of primitive |
| operations in a case where it returned previously No_Elist. |
| |
| 2011-08-31 Robert Dewar <dewar@adacore.com> |
| |
| * s-taprop-vxworks.adb, sem_ch5.adb, s-taprop-tru64.adb, exp_alfa.adb, |
| s-taprop-vms.adb, bindgen.adb, s-mudido.adb, s-mudido.ads, |
| sem_res.adb, expander.adb, s-taprop-mingw.adb, s-taprop-linux.adb, |
| s-taprop-solaris.adb, s-mudido-affinity.adb, vms_conv.adb, |
| s-taprop-irix.adb, s-taprop.ads, s-taskin.adb, s-taskin.ads, |
| s-taprop-hpux-dce.adb, a-chtgbo.adb, s-taprop-posix.adb: Minor |
| reformatting. |
| |
| 2011-08-31 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch12 (Check_Private_View): Revert previous change. |
| * sem_res.adb (Conversion_Check): Do not emit the error message if the |
| conversion is in a generic instance. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbhase.adb (Symmetric_Difference): Dereference correct node array. |
| * a-chtgbo.adb (Free): Allow 0 as index value. |
| |
| 2011-08-31 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cborma.adb (Insert): Add comment to explain why no element |
| assignment. |
| |
| 2011-08-31 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_util.adb (Find_Body_Discriminal): Test whether the scope of the |
| spec discriminant is already a concurrent type, in which case just use |
| it, otherwise fetch the Corresponding_Concurrent_Type as before. |
| |
| 2011-08-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * system-irix-n64.ads, system-linux-armeb.ads, system-linux-armel.ads, |
| system-linux-mips.ads, system-linux-mipsel.ads, |
| system-linux-mips64el.ads, system-linux-ppc64.ads, |
| system-linux-sparcv9.ads, system-rtems.ads: Remove GCC_ZCX_Support. |
| |
| 2011-08-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (TYPE_EXTRA_SUBTYPE_P): Add internal check. |
| * gcc-interface/utils2.c (build_binary_op): Tighten condition. |
| (build_unary_op): Likewise. |
| |
| 2011-08-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * raise-gcc.c: Do not include coretypes.h and tm.h. |
| (setup_to_install): Remove test for compiler macro. |
| * targext.c: Document use for the library. |
| * gcc-interface/Makefile.in: Fix comment on the use of IN_GCC. |
| |
| 2011-08-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not convert |
| the expression to the nominal type if the latter is a record type with |
| a variant part and the type of the former is a record type without one. |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * exp_aggr.adb, exp_ch11.adb, exp_prag.adb: Remove early exit during |
| expansion in Alfa mode. |
| * exp_ch6.adb, exp_ch6.ads (Expand_Actuals): Make subprogram public |
| * exp_alfa.adb, exp_alfa.ads: New package defining light expansion for |
| Alfa mode. |
| * gnat1drv.adb (Adjust_Global_Switches): Update Comment. |
| * sem_res.adb: Ditto. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-30 Thomas Quinot <quinot@adacore.com> |
| |
| * g-socket.ads: Minor documentation adjustment. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, s-tassta.adb, s-secsta.adb: Minor reformatting. |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch6_light.adb, exp_ch6_light.ads, exp_attr_light.adb, |
| exp_attr_light.ads, exp_ch7_light.adb, exp_ch7_light.ads, |
| exp_light.adb, exp_light.ads, exp_prag.adb, expander.adb, |
| gnat1drv.adb, exp_ch11.adb, exp_ch6.adb, exp_ch6.ads, exp_aggr.adb: |
| Revert change which introduced files for "light" |
| expansion, to be replaced by a single file for Alfa expansion. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * opt.ads, s-soflin.adb, exp_ch9.adb, sem_res.adb: Update comment. |
| Minor code reorg/reformatting. |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * opt.adb, opt.ads (Full_Expander_Active): New function defines a |
| common shorthand for (Expander_Active and not ALFA_Mode) that can be |
| used for testing full expansion, that is active expansion not in the |
| reduced mode for Alfa |
| * exp_ch4.adb, exp_ch9.adb, exp_disp.adb, sem_ch10.adb, sem_ch12.adb, |
| sem_ch6.adb, sem_ch9.adb, sem_res.adb: Use newly defined "flag" instead |
| of the verbose (Expander_Active and not ALFA_Mode) |
| |
| 2011-08-30 Tristan Gingold <gingold@adacore.com> |
| |
| * s-parame-vms-alpha.ads, s-parame-hpux.ads, s-tassta.adb, |
| s-tarest.adb, s-parame-vms-ia64.ads, s-soflin.adb, s-secsta.adb, |
| s-secsta.ads, s-parame.ads, s-parame-vxworks.ads, s-parame-ae653.ads: |
| Renames Ratio to Percentage, and Sec_Stack_Ratio to Sec_Stack_Percentage |
| |
| 2011-08-30 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_res.adb (Valid_Conversion): Revise test for implicit anonymous |
| access conversions to check that the conversion is a rewritten node, |
| rather than just having Comes_From_Source set to False, which wasn't |
| sufficient. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, sem_ch9.adb, sem_ch6.adb, exp_disp.adb, |
| g-socket.ads: Minor reformatting. |
| |
| 2011-08-30 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_util.adb: Minor reformatting. |
| |
| 2011-08-30 Tristan Gingold <gingold@adacore.com> |
| |
| * raise-gcc.c: Never catch exception if _UA_FORCE_UNWIND flag is set, |
| to be compliant with the ABI. |
| |
| 2011-08-30 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch12.adb (Check_Private_View): Exchange the private and full view |
| of a designated type when the related access type is an actual in an |
| instance. This ensures that the full view of designated type is |
| available when inside the body of the instance. |
| |
| 2011-08-30 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb (May_Be_Lvalue): To determine whether a reference may be |
| in a position to be modified, a slice is treated like an indexed |
| component. |
| |
| 2011-08-30 Thomas Quinot <quinot@adacore.com> |
| |
| * s-oscons-tmplt.c, g-socket.ads: Adjust maximum allowed value for |
| field tv_sec in struct timeval. |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch9.adb, exp_disp.adb, sem_ch9.adb, sem_res.adb: Protect several |
| blocks of code doing full expansion, previously only guarded by |
| Expander_Active, by anding the test that ALFA_Mode is not set |
| |
| 2011-08-30 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Return_Type): If the return type is incomplete, |
| add the function to the list of private dependents, for subsequent |
| legality check on Taft amendment types. |
| * sem_ch12.adb (Analyze_Formal_Incomplete_Type): Initialize |
| Private_Dependents, as for other incomplete types. |
| * sem_util.adb (Wrong_Type): Avoid cascaded errors when a |
| Taft-amendment type is used as the return type of a function. |
| |
| 2011-08-30 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Check_Abstract_Overriding): Code cleanup: replace code |
| which emits an error by a call to a new routine which report the error. |
| * exp_ch9.adb (Build_Wrapper_Spec): Build the wrapper even if the |
| entity does not cover an existing interface. |
| * errout.ads, errout.adb (Error_Msg_PT): New routine. Used to factorize |
| code. |
| * sem_ch6.adb (Check_Conformance): Add specific error for wrappers of |
| protected procedures or entries whose mode is not conformant. |
| (Check_Synchronized_Overriding): Code cleanup: replace code which emits |
| an error by a call to a new routine which report the error. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor change. |
| * exp_attr_light.adb: Minor reformatting. |
| |
| 2011-08-30 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb: Patch inheritance of aspects in |
| Complete_Private_Subtype, to avoid infinite loop. |
| |
| 2011-08-30 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Add_Internal_Interface_Entities): If serious errors have |
| been reported and a subprogram covering an interface primitive is not |
| found then skip generating the internal entity. Done to avoid crashing |
| the frontend. |
| (Check_Abstract_Overriding): Change text of error of wrong formal of |
| protected subprogram or entry. Done for consistency to emit exactly the |
| same error reported by Check_Synchronized_Overriding. In addition, the |
| error is restricted to protected types (bug found working on AI05-0090) |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * exp_aggr.adb, exp_ch11.adb, exp_prag.adb: Remove early exit during |
| expansion in Alfa mode. |
| * exp_ch6.adb, exp_ch6.ads (Expand_Actuals): Make subprogram public. |
| * exp_light.adb, exp_light.ads: New package defining light expansion. |
| * expander.adb (Expand): Call light expansion in Alfa mode |
| * exp_ch6_light.adb, exp_ch6_light.ads: Light expansion of chapter 6 |
| constructs. |
| * exp_ch7_light.adb, exp_ch7_light.ads: Light expansion of chapter 7 |
| constructs. |
| * exp_attr_light.adb, exp_attr_light.ads: Light expansion of attributes |
| * gnat1drv.adb (Adjust_Global_Switches): Comment |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb: Minor refactoring. |
| |
| 2011-08-30 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch9.adb (Expand_Entry_Barrier): Do not perform expansion in Alfa |
| mode. |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not perform |
| expansion in Alfa mode. |
| * sem_ch9.adb (Analyze_Entry_Body): Do not perform expansion in Alfa |
| mode. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * debug_a.adb: Update comment. |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sem_ch3.adb, sem_ch5.adb, einfo.adb, checks.adb, |
| sem_util.adb, sem_util.ads, sem_res.adb, s-stposu.adb, sem_attr.adb, |
| exp_ch4.adb, exp_ch6.adb, lib-xref-alfa.adb, |
| sem_ch8.adb, sem_disp.adb, exp_ch3.adb: Minor reformatting |
| |
| 2011-08-30 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Add section on C.6(16) implementation advice for pragma |
| volatile. |
| |
| 2011-08-30 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Expand_Freeze_Array_Type): Correct the call to |
| Build_Finalization_Master by supplying an insertion node and enclosing |
| scope. In its old version, the call did not generate a finalization |
| master. |
| (Expand_Freeze_Record_Type): Add local variable Has_AACC. Add code to |
| recognize anonymous access-to-controlled components. Rewrite the |
| machinery which creates finalization masters to service anonymous |
| access-to-controlled components of a record type. In its current state, |
| only one heterogeneous master is necessary to handle multiple anonymous |
| components. |
| (Freeze_Type): Comment reformatting. |
| * rtsfind.ads: Add RE_Set_Is_Heterogeneous to tables RE_Id and |
| RE_Unit_Table. |
| * s-stposu.adb (Allocate_Any_Controlled): Rewrite the machinery which |
| associates TSS primitive Finalize_Address with either the master itself |
| or with the internal hash table depending on the mode of operation of |
| the master. |
| |
| 2011-08-30 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch3.adb (Make_Eq_If): If the etype of the _parent component is an |
| interface type then do not generate code to compare this component. |
| Required since they have no components and their equality operator is |
| abstract. |
| |
| 2011-08-30 Steve Baird <baird@adacore.com> |
| |
| * sem_util.ads (Deepest_Type_Access_Level): New function; for the type |
| of a saooaaat (i.e, a stand-alone object of an anonymous access type), |
| returns the (static) accessibility level of the object. Otherwise, the |
| same as Type_Access_Level. |
| (Dynamic_Accessibility_Level): New function; given an expression which |
| could occur as the rhs of an assignment to a saooaaat (i.e., an |
| expression of an access-to-object type), return the new value for the |
| saooaaat's associated Extra_Accessibility object. |
| (Effective_Extra_Accessibility): New function; same as |
| Einfo.Extra_Accessibility except that object renames are looked through. |
| * sem_util.adb |
| (Deepest_Type_Access_Level): New function; see sem_util.ads description. |
| (Dynamic_Accessibility_Level): New function; see sem_util.ads |
| description. |
| (Effective_Extra_Accessibility): New function; see sem_util.ads |
| description. |
| * einfo.ads (Is_Local_Anonymous_Access): Update comments. |
| (Extra_Accessibility): Update comments. |
| (Init_Object_Size_Align): New procedure; same as Init_Size_Align |
| except RM_Size field (which is only for types) is unaffected. |
| * einfo.adb |
| (Extra_Accessibility): Expand domain to allow objects, not just formals. |
| (Set_Extra_Accessibility): Expand domain to allow objects, not just |
| formals. |
| (Init_Size): Add assertion that we are not trashing the |
| Extra_Accessibility attribute of an object. |
| (Init_Size_Align): Add assertion that we are not trashing the |
| Extra_Accessibility attribute of an object. |
| (Init_Object_Size_Align): New procedure; see einfo.ads description. |
| * sem_ch3.adb (Find_Type_Of_Object): Set Is_Local_Anonymous_Access |
| differently for the type of a (non-library-level) saooaaat depending |
| whether Ada_Version < Ada_2012. This is the only point where Ada_Version |
| is queried in this set of changes - everything else (in particular, |
| setting of the Extra_Accessibility attribute in exp_ch3.adb) is |
| driven off of the setting of the Is_Local_Anonymous_Access attribute. |
| The special treatment of library-level saooaaats is an optimization, |
| not required for correctnesss. This is based on the observation that the |
| Ada2012 rules (static and dynamic) for saooaaats turn out to be |
| equivalent to the Ada2005 rules in the case of a library-level saooaaat. |
| * exp_ch3.adb |
| (Expand_N_Object_Declaration): If Is_Local_Anonymous_Access is |
| false for the type of a saooaaat, declare and initialize its |
| accessibility level object and set the Extra_Accessibility attribute |
| of the saooaaat to refer to this object. |
| * checks.adb (Apply_Accessibility_Check): Add Ada 2012 saooaaat support. |
| * exp_ch4.adb (Expand_N_In): Replace some Extra_Accessibility calls with |
| calls to Effective_Extra_Accessibility in order to support |
| renames of saooaaats. |
| (Expand_N_Type_Conversion): Add new local function, |
| Has_Extra_Accessibility, and call it when determining whether an |
| accessibility check is needed. |
| It returns True iff Present (Effective_Extra_Accessibility (Id)) would |
| evaluate to True (without raising an exception). |
| * exp_ch5.adb |
| (Expand_N_Assignment_Statement): When assigning to an Ada2012 |
| saooaaat, update its associated Extra_Accessibility object (if |
| it has one). This includes an accessibility check. |
| * exp_ch6.adb (Add_Call_By_Copy_Code): When parameter copy-back updates |
| a saooaaat, update its Extra_Accessibility object too (if it |
| has one). |
| (Expand_Call): Replace a couple of calls to Type_Access_Level |
| with calls to Dynamic_Access_Level to handle cases where |
| passing a literal (any literal) is incorrect. |
| * sem_attr.adb (Resolve_Attribute): Handle the static accessibility |
| checks associated with "Saooaat := Some_Object'Access;"; this must |
| be rejected if Some_Object is declared in a more nested scope |
| than Saooaat. |
| * sem_ch5.adb (Analyze_Assignment): Force accessibility checking for an |
| assignment to a saooaaat even if Is_Local_Anonymous_Access |
| returns False for its type (indicating a 2012-style saooaaat). |
| * sem_ch8.adb |
| (Analyze_Object_Renaming): Replace a call to Init_Size_Align |
| (which is only appropriate for objects, not types) with a call |
| of Init_Object_Size_Align in order to avoid trashing the |
| Extra_Accessibility attribute of a rename (the two attributes |
| share storage). |
| * sem_res.adb |
| (Valid_Conversion) Replace six calls to Type_Access_Level with |
| calls to Deepest_Type_Access_Level. This is a bit tricky. For an |
| Ada2012 non-library-level saooaaat, the former returns library level |
| while the latter returns the (static) accessibility level of the |
| saooaaat. A type conversion to the anonymous type of a saooaaat |
| can only occur as part of an assignment to the saooaaat, so we |
| know that such a conversion must be in a lhs context, so Deepest |
| yields the result that we need. If such a conversion could occur, |
| say, as the operand of an equality operator, then this might not |
| be right. Also add a test so that static accessibilty checks are |
| performed for converting to a saooaaat's type even if |
| Is_Local_Anonymous_Access yields False for the type. |
| |
| 2011-08-30 Javier Miranda <miranda@adacore.com> |
| |
| * sem_disp.adb (Check_Dispatching_Operation): Complete condition that |
| controls generation of a warning associated with late declaration of |
| dispatching functions. Required to avoid generating spurious |
| warnings. |
| |
| 2011-08-30 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch6.adb (Check_Return_Subtype_Indication): Issue error if the |
| return object has an anonymous access type and the function's type is |
| a named access type. |
| * sem_ch8.adb (Analyze_Object_Renaming): Suppress error about renaming |
| conversions on implicit conversions, since such conversions can occur |
| for anonymous access cases due to expansion. Issue error for attempt |
| to rename an anonymous expression as an object of a named access type. |
| * sem_res.ads (Valid_Conversion): Add defaulted parameter Report_Errs, |
| to indicate whether this function should report errors on invalid |
| conversions. |
| * sem_res.adb (Resolve): For Ada 2012, in the case where the type of |
| the expression is of an anonymous access type and the expected type is |
| a named general access type, rewrite the expression as a type |
| conversion, unless this is an expression of a membership test. |
| (Valid_Conversion.Error_Msg_N): New procedure that conditions the |
| calling of Error_Msg_N on new formal Report_Errs. |
| (Valid_Conversion.Error_Msg_NE): New procedure that conditions the |
| calling of Error_Msg_NE on new formal Report_Errs. |
| (Valid_Conversion): Move declaration of this function to the package |
| spec, to allow calls from membership test processing. For Ada 2012, |
| enforce legality restrictions on implicit conversions of anonymous |
| access values to general access types, disallowing such conversions in |
| cases where the expression has a dynamic accessibility level (access |
| parameters, stand-alone anonymous access objects, or a component of a |
| dereference of one of the first two cases). |
| * sem_type.adb (Covers): For Ada 2012, allow an anonymous access type |
| in the context of a named general access expected type. |
| * exp_ch4.adb Add with and use of Exp_Ch2. |
| (Expand_N_In): Add processing for membership tests applied to |
| expressions of an anonymous access type. First, Valid_Conversion is |
| called to check whether the test is statically False, and then the |
| conversion is expanded to test that the expression's accessibility |
| level is no deeper than that of the tested type. In the case of |
| anonymous access-to-tagged types, a tagged membership test is applied |
| as well. |
| (Tagged_Membership): Extend to handle access type cases, applying the |
| test to the designated types. |
| * exp_ch6.adb (Expand_Call): When creating an extra actual for an |
| accessibility level, and the actual is a 'Access applied to a current |
| instance, pass the accessibility level of the type of the current |
| instance rather than applying Object_Access_Level to the prefix. Add a |
| ??? comment, since this level isn't quite right either (will eventually |
| need to pass an implicit level parameter to init procs). |
| |
| 2011-08-30 Bob Duff <duff@adacore.com> |
| |
| * s-taskin.ads: Minor comment fix. |
| |
| 2011-08-30 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Check_Parameterless_Call): If the node is a selected |
| component and the selector is a dispatching operation, check if it is |
| a prefixed call before rewriting as a parameterless function call. |
| |
| 2011-08-29 Jakub Jelinek <jakub@redhat.com> |
| |
| * gcc-interface/Makefile.in (../stamp-gnatlib1-$(RTSDIR)): Copy |
| tsystem.h into $(RTSDIR) instead of rts. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch10.adb, a-coorse.adb, exp_dist.adb, exp_ch3.adb: Minor |
| reformatting. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * alfa.ads (Name_Of_Heap_Variable): New constant name. |
| * lib-xref-alfa.adb, lib-xref.adb, lib-xref.ads (Drefs): New global |
| table to hold dereferences. |
| (Add_ALFA_Xrefs): Take into account dereferences as special |
| reads/writes to the variable "HEAP". |
| (Enclosing_Subprogram_Or_Package): Move subprogram here. |
| (Generate_Dereference): New procedure to store a read/write dereferencew |
| in the table Drefs. |
| * put_alfa.adb (Put_ALFA): Use different default than (0,0) used for |
| the special "HEAP" var. |
| * sem_ch4.adb (Analyze_Explicit_Dereference): Store read dereference |
| in ALFA mode. |
| * sem_util.adb (Note_Possible_Modification): Store write dereference |
| in ALFA mode. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Freeze_Type): Generate an accessibility check which |
| ensures that the level of the subpool access type is not deeper than |
| that of the pool object. |
| * sem_util.adb (Object_Access_Level): Expand to handle defining |
| identifiers. |
| * sem_res.adb (Resolve_Allocator): Add a guard to avoid examining the |
| subpool handle name of a rewritten allocator. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * impunit.adb, exp_ch4.adb, s-finmas.adb: Minor reformatting. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_dist.adb (TC_Rec_Add_Process_Element): For a choice with multiple |
| values, we generate multiple triples of parameters in the TypeCode. |
| Bump Choice_Index for each such triple so that a subsequent default |
| choice is associated with the correct index in the typecode. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cdlili.adb (Iterate): Initialize properly an iterator over a null |
| container. |
| (First, Last): Handle properly an iterator over a null container. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * sem_ch10.adb (Analyze_With_Clause,Install_Withed_Unit): Abandon |
| processing if we run across a node with no Scope. This can happen if |
| we're with-ing an library-level instance, and that instance got errors |
| that caused "instantiation abandoned". |
| * sem_util.adb (Unit_Declaration_Node): Make it more robust, by raising |
| an exception instead of using Assert, so it won't go into an infinite |
| loop, even when assertions are turned off. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-coorse.adb: Proper handling of empty ordered sets. |
| |
| 2011-08-29 Johannes Kanig <kanig@adacore.com> |
| |
| * debug.adb: Add comments. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * a-except.adb, a-except-2005.adb: Minor comment rewording and |
| reformatting. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Array_Type_Declaration): Remove insertion of |
| declaration for Itypes in Alfa mode. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-cdlili.ads, a-coinve.ads, a-coorma.adb, a-coorma.ads, s-tassta.adb, |
| a-cborma.adb, a-cborma.ads, a-cohama.ads, a-coorse.ads, a-cbhama.ads, |
| a-cborse.ads, a-cobove.adb, a-cobove.ads, a-cbhase.ads: Minor |
| reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * exp_ch7.adb, exp_ch7.ads (Build_Exception_Handler): Move its spec to |
| package spec. |
| * exp_intr.adb (Expand_Unc_Deallocation): Use Build_Exception_Handler. |
| * a-except.adb, a-except-2005.adb (Rcheck_22): Do not defer aborts |
| while raising PE. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbhama.adb, a-cbhama.ads: Minor reformatting. |
| |
| 2011-08-29 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Subprogram_Renaming): Complete support for |
| renamings of formal subprograms when the actual for a formal type is |
| class-wide. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbhama.ads, a-cbhase.ads (Move): Clear Source following assignment |
| to Target. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cborma.ads, a-cborse.ads (Cursor): Default-initialize all |
| components of record type. |
| * a-cborma.adb, a-cborse.adb (Move): Clear Source following assignmentw |
| to Target. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cbhama.adb, a-cbhama.ads, a-cborma.adb, a-cborma.ads, a-cobove.adb, |
| a-cobove.ads, a-coorma.adb, a-coorma.ads: Add iterator machinery to |
| container packages. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_util.adb, gnat1drv.adb, s-parint.ads: Minor |
| reformatting. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbhama.ads, a-cbhase.ads (Cursor): Default-initialize all |
| components of record type. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * s-tassta.adb (Task_Wrapper): Handle and ignore exceptions propagated |
| by the termination handler. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Array_Type_Declaration): Create declarations for Itypes |
| created in Alfa mode, instead of inserting artificial declarations of |
| non-Itypes in the tree. |
| * sem_util.adb, sem_util.ads (Itype_Has_Declaration): New function to |
| know if an Itype has a corresponding declaration, as defined in |
| itypes.ads. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * gnat1drv.adb: Minor rewrite. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * s-tasuti.adb (Make_Passive): Work around race condition in |
| Make_Independent, which can cause Wait_Count to be zero. So instead of |
| asserting that Wait_Count > 0, and then decrementing it, decrement it |
| only if Wait_Count > 0. |
| * s-taskin.ads (Wait_Count, Alive_Count, Awake_Count): All of these |
| should be nonnegative, so declare them Natural instead of Integer. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sem_ch3.adb, a-cihama.adb, a-cihama.ads, exp_ch7.adb, |
| sem_ch5.adb, a-ciorse.adb, a-ciorse.ads, sem_ch12.adb, a-cidlli.adb, |
| a-cidlli.ads, sem_util.adb, sem_res.adb, gnat1drv.adb, a-except.adb, |
| a-except.ads, a-except-2005.ads, sem_ch4.adb, exp_disp.adb, |
| exp_aggr.adb, sem_ch13.adb, par-ch3.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * s-auxdec-vms-alpha.adb: Add comments, remove some HT before labels. |
| |
| 2011-08-29 Vadim Godunko <godunko@adacore.com> |
| |
| * s-parint.ads: Minor comment clarification. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * prj.adb (Initialize): Make sure that new reserved words after Ada 95 |
| may be used as identifiers. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-coinho.ads: Minor reformating. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Handle properly a loop over a |
| container of a derived type. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cidlli.adb, a-cidlli.ads, a-cihama.adb, a-cihama.ads, |
| a-ciorse.adb, a-ciorse.ads: Add iterator machinery to containers. |
| |
| 2011-08-29 Pascal Obry <obry@adacore.com> |
| |
| * exp_disp.adb: Minor comment fix. |
| (Make_Disp_Asynchronous_Select_Body): Properly initialize out parameters |
| to avoid warnings when compiling with -Wall. |
| (Make_Disp_Conditional_Select_Body): Likewise. |
| (Make_Disp_Timed_Select_Body): Likewise. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Formal_Subprogram_Declaration): If default is |
| an entity name, generate reference for it. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Uniform handling of "X of S" |
| iterator form. |
| * sem_util.adb (Is_Iterator, Is_Reversible_Iterator): Yield True for |
| the class-wide type. |
| * sem_ch5.adb: Move some rewriting to the expander, where it belongs. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Check_Constrained_Object): Do not create an actual |
| subtype for an object whose type is an unconstrained union. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch3.adb (P_Array_Type_Definiation, P_Component_Items): "aliased" |
| is allowed in a component definition, by AI95-406. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-chtgbo.adb (Generic_Iteration): Use correct overloading of Next. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-except-2005.adb: Alphabetize all routines. |
| (Triggered_By_Abort): New routine. |
| * a-except-2005.ads (Triggered_By_Abort): New routine. |
| * a-except.adb Alphabetize all routines. |
| (Triggered_By_Abort): New routine. |
| * a-except.ads (Triggered_By_Abort): New routine. |
| * exp_ch7.adb: Update all comments involving the detection of aborts in |
| finalization code. |
| (Build_Object_Declarations): Do not generate code to detect the |
| presence of an abort at the start of finalization code, use a runtime |
| routine istead. |
| * rtsfind.ads: Add RE_Triggered_By_Abort to tables RE_Id and |
| RE_Unit_Table. |
| * sem_res.adb (Resolve_Allocator): Emit a warning when attempting to |
| allocate a task on a subpool. |
| * s-stposu.adb: Add library-level flag Finalize_Address_Table_In_Use. |
| The flag disables all actions related to the maintenance of |
| Finalize_Address_Table when subpools are not in use. |
| (Allocate_Any_Controlled): Signal the machinery that subpools are in |
| use. |
| (Deallocate_Any_Controlled): Do not call Delete_Finalize_Address which |
| performs costly task locking when subpools are not in use. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * gnat1drv.adb (Adjust_Global_Switches): Restore expansion of tagged |
| types and dispatching calls in Alfa mode. |
| * lib-xref-alfa.adb (Collect_ALFA): Rewrite computation of |
| correspondance between body and spec scopes, to reuse utility functions |
| (Traverse_Declarations_Or_Statements): Protect access to body for stub |
| by testing the presence of the library unit for the body |
| * sem_ch6.adb (Set_Actual_Subtypes): take into account that in Alfa |
| mode the expansion of accept statements is skipped |
| * sem_util.adb, sem_util.ads (Unique_Entity): New function returning |
| the unique entity corresponding to the one returned by |
| Unique_Defining_Entity applied to the enclosing declaration of the |
| argument. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * treepr.ads: Improve debugging facilities. pn(x) no longer crashes in |
| gdb when x is not a node (it can be a node list, name_id, etc). pp is |
| an alias for pn. ppp is an alias for pt. |
| |
| 2011-08-29 Javier Miranda <miranda@adacore.com> |
| |
| * exp_aggr.adb (Expand_Record_Aggregate): Use the top-level enclosing |
| aggregate to take a consistent decision on the need to convert into |
| assignments aggregates that initialize constant objects. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_Allocator_Expression): Add a call to |
| Build_Allocate_Deallocate_Proc in order to handle allocation of |
| non-controlled objects on subpools. |
| * impunit.adb: Remove s-finmas and s-spsufi since they were never meant |
| to be end-user visible. |
| * s-finmas.adb: Add with and use clause for System.HTable. |
| Add an instantiation of Simple_HTable which provides a mapping between |
| the address of a controlled object and the corresponding |
| Finalize_Address used to clean up the object. The table is used when a |
| master is operating in heterogeneous mode. |
| (Attach): Explain why the input node is not verified on being already |
| attached. |
| (Delete_Finalize_Address): New routine. |
| (Detach): Add pragma Assert which ensures that a node is already |
| attached. |
| (Finalize): Add local variable Cleanup. Rewrite the iteration scheme |
| since nodes are no longer removed on traversal. Explain why node |
| detachment is undesirable in this case. |
| (Get_Finalize_Address): New routine. |
| (Hash): New routine. |
| (Is_Empty_List): Removed. |
| (pm): Renamed to Print_Master. Add output for discriminant |
| Is_Homogeneous. |
| Comment reformatting. |
| (Set_Finalize_Address (Address, Finalize_Address_Ptr)): New routine. |
| * s-finmas.ads: Various comments additions / improvements. |
| Type Finalization_Master has a discriminant which determines the mode of |
| operation. |
| (Delete_Finalize_Address): New routine. |
| (Get_Finalize_Address): New routine. |
| (pm): Renamed to Print_Master. |
| (Set_Finalize_Address (Address, Finalize_Address_Ptr)): New routine. |
| * s-stposu.adb: Add with clause for System.Address_Image; Add with and |
| use clause for System.IO. |
| (Allocate_Any_Controlled): Add machinery to set TSS primitive |
| Finalize_Address depending on the mode of allocation and the mode of |
| the master. |
| (Deallocate_Any_Controlled): Remove the relation pair object - |
| Finalize_Address regardless of the master mode. Add comment explaining |
| the reason. |
| (Detach): Ensure that fields Prev and Next are null after detachment. |
| (Finalize_Pool): Remove local variable Next_Ptr. Rewrite the iteration |
| scheme to check whether the list of subpools is empty. There is no |
| longer need to store the next subpool or advance the current pointer. |
| (Is_Empty_List): New routine. |
| (Print_Pool): New routine. |
| (Print_Subpool): New routine. |
| * s-stposu.ads: Various comments additions / improvements. |
| Field Master of type Root_Subpool is now a heterogeneous collection. |
| (Print_Pool): New routine. |
| (Print_Subpool): New routine. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Iterator_Loop): Implement Ada2012 loop iterator |
| forms, using aspects of container types. |
| * sem_ch3.adb (Find_Type_Name): Preserve Has_Delayed_Aspects and |
| Has_Implicit_Dereference flags, that may be set on the partial view. |
| * sem_ch4.adb (Process_Overloaded_Indexed_Component): Prefix may be a |
| container type with an indexing aspect. |
| (Analyze_Quantified_Expression): Analyze construct with expansion |
| disabled, because it will be rewritten as a loop during expansion. |
| (Try_Container_Indexing): The prefix itself may be a container type |
| with an indexing aspect, as with a vector of vectors. |
| * sem_ch5.adb (Analyze_Iteration_Scheme): In a generic context, analyze |
| the original doamin of iteration, for name capture. |
| (Analyze_Iterator_Specification): If the domain is an expression that |
| needs finalization, create a separate declaration for it. |
| For an iterator with "of" retrieve default iterator info from aspect of |
| container type. For "in" iterator, retrieve type of Iterate function. |
| * sem_ch13.adb (Check_Iterator_Function): Fix typo. |
| (Check_Aspect_At_End_Of_Declaration): Make type unfrozen before |
| analysis, to prevent spurious errors about late attributes. |
| * sprint.adb: Handle quantified expression with either loop or iterator |
| specification. |
| * a-convec.ads, a-convec.adb: Iterate function returns a reversible |
| iterator. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Scan_Make_Arg): Take any option as is in packages Compiler, |
| Binder or Linker of the main project file. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * inline.adb (Add_Scopes_To_Clean): Exclude any entity within a generic |
| unit. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch9.adb: Partial revert of previous change for Alfa mode |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch11.adb: Minor expansion of comment. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Add_ALFA_Scope): Treat generic entities. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Arithmetic_Op): If the node has a universal |
| interpretation, set the type before resolving the operands, because |
| legality checks on an exponention operand need to know the type of the |
| context. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Package_Instantiation): Do not set delayed |
| cleanups on a master if the instance is within a generic unit. |
| Complement to the corresponding fix to inline.adb for K520-030. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * exp_ch7.adb (Build_Raise_Statement): Raise PE instead of the current |
| occurrence. |
| * exp_intr.adb: Minor comment fix. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Fix cases where |
| Delay_Required was used as an uninitialized variable. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-cdlili.adb, a-cdlili.ads, a-coinve.adb, a-coinve.ads, |
| sem_util.adb, sem_util.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, |
| a-coorse.ads, aspects.ads, sem_ch8.adb: Minor reformatting. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * system-freebsd-x86_64.ads (Backend_Overflow_Checks): Set true True. |
| Remove unused variables. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb: Remove Build_Explicit_Dereference. |
| * sem_util.adb, sem_util.ads (Build_Explicit_Dereference): Moved here |
| from sem_res.adb, used in analysis of additional constructs. |
| (Is_Iterator, Is_Reversible_Iterator): New predicates for Ada2012 |
| expansion of iterators. |
| (Is_Object_Reference): Recognize variables rewritten as explicit |
| dereferences in Ada2012. |
| * snames.ads-tmpl: Add Has_Element, Forward_Iterator, |
| Reversible_Iterator names, for expansion of Ada2012 iterators. |
| * aspects.ads, aspects.adb (Find_Aspect): Utility. |
| * a-cdlili.ads, a-cdlili.adb: Add new iterator machinery to doubly |
| linked list container. |
| * a-coinve.ads, a-coinve.adb: Ditto for indefinite vector containers. |
| * a-coorse.ads, a-coorse.adb: Ditto for ordered sets. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * a-cohama.adb, a-cohama.ads: Add iterator primitives to hashed map |
| containers. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): Get the maximum number of simultaneous |
| compilation processes after the Builder switches has been scanned, as |
| there may include -jnn. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-chtgbo.adb (Generic_Equal): Use correct overloading of Next. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * gnatcmd.adb (GNATCmd): On OpenVMS, truncate the length of |
| GNAT_DRIVER_COMMAND_LINE to 255. |
| |
| 2011-08-29 Pascal Obry <obry@adacore.com> |
| |
| * freeze.adb, sem_ch8.adb, a-convec.adb, a-convec.ads: Minor |
| reformatting and style fix (class attribute casing). |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch11.adb: Yet another case where expansion should be common |
| between CodePeer and Alfa. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch9.adb: Partial revert of previous change for Alfa mode. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Matches_Limited_With_View): The limited views of an |
| incomplete type and its completion match. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch13.adb: Adjust previous change. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb, prj.adb, sem_util.adb, sem_res.adb, gnat1drv.adb, |
| exp_ch4.adb, sem_ch8.adb: Minor code reorganization |
| Minor reformatting. |
| |
| 2011-08-29 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, prj.adb, prj.ads (Compute_All_Imported_Projects): Also |
| initialize aggregated projects. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Find_Renamed_Entity): Within an instance, use scope |
| depth of candidates to resolve a potentially spurious ambiguity between |
| two visible subprograms. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Allow Test_Case pragma without |
| Requires/Ensures. |
| * sem_util.adb (Get_Ensures_From_Test_Case_Pragma, |
| Get_Requires_From_Test_Case_Pragma): Allow Test_Case pragma without |
| Requires/Ensures. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnat1drv.adb (Adjust_Global_Switches): Improve previous change. |
| Add comment. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_res.adb: Minor reformatting. |
| |
| 2011-08-29 Johannes Kanig <kanig@adacore.com> |
| |
| * exp_ch4.adb (Expand_Quantified_Expression): Do not expand in ALFA |
| mode. |
| * gnat1drv.adb (Adjust_Global_Switches): Set |
| Use_Expressions_With_Actions to False in ALFA mode. |
| * sem_res.adb (Resolve_Quantified_Expression): Simpler treatment in |
| ALFA mode. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch13.adb (Expand_N_Freeze_Entity): Do nothing in Alfa mode. |
| * exp_ch9.adb: Do not expand tasking constructs in Alfa mode. |
| * gnat1drv.adb (Adjust_Global_Switches): Suppress the expansion of |
| tagged types and dispatching calls in Alfa mode. |
| |
| 2011-08-29 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Process_Discriminants): Add missing check to ensure that |
| we do not report an error on an Empty node. |
| |
| 2011-08-29 Geert Bosch <bosch@adacore.com> |
| |
| * Makefile.rtl (GNATRTL_NONTASKING_OBJECTS): Add a-nllrar.o, |
| a-nlrear.o and a-nurear.o. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb: Minor code reorganization. |
| Minor reformatting. |
| * sem_util.adb, errout.adb, exp_ch11.adb, a-ngrear.adb, s-gearop.adb, |
| sem_ch6.adb: Minor reformatting |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * s-except.ads, s-except.adb: Provide dummy body. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_warn.adb (Within_Postcondition): Take into account the case of |
| an Ensures component in a Test_Case. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * s-excdeb.ads, s-excdeb.adb: New files, created from s-except. |
| * rtsfind.ads (RTU_Id): Replaces System_Exceptions by |
| System_Exceptions_Debug |
| (RE_Unit_Table): Search RE_Local_Raise in System_Exceptions_Debug |
| * a-except.adb: With and use System.Exceptions_Debug instead of |
| System.Exceptions. |
| * a-except-2005.adb: Likewise. |
| * s-assert.adb: Likewise. |
| * s-except.adb, s-except.ads: Move debugging hooks to s-excdeb. |
| * Makefile.rtl: Add s-excdeb. Adjust compilation rule. |
| * gcc-interfaces/Makefile.in, gcc-interface/Make-lang.in: Add |
| s-excdeb. Update dependencies. |
| (GNATRTL_LINEARALGEBRA_OBJS): Remove a-nlrear.o a-nurear.o a-nllrar.o |
| as these no longer need external libraries. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Op_Expon): Additional check to reject an |
| exponentiation operator on universal values in a context that requires |
| a fixed-point type. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * raise-gcc.c (personnality_routine): Fix thinko. Set Ada occurrence |
| before calling notify_handled_exception. |
| * a-exextr.adb: Fix comment. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_Allocator_Expression): Add code to set attribute |
| Finalize_Address of the access type's finalization master. |
| (Expand_N_Allocator): Add code to set attribute Finalize_Address of the |
| access type's finalization master. Add a guard to prevent |
| Associated_Storage_Pool from being set on .NET/JVM. |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Add code to set |
| attribute Finalize_Address of the access type's finalization master. |
| * exp_ch7.adb (Make_Finalize_Address_Call): New routine. |
| * exp_ch7.ads (Make_Finalize_Address_Call): New routine. |
| * rtsfind.ads: Add RE_Set_Finalize_Address to tables RE_Id and |
| RE_Unit_Table. |
| * s-finmas.adb: Add with clause for System.Address_Image. Add with and |
| use clause for System.IO |
| (Detach): Relax the assertion, to be reinstated later. |
| (Finalize): Rewrite the iteration loop to avoid pointer comparison. |
| Relax the assertion on Finalize_Address, to be reinstated later. |
| (Is_Empty_List): New routine. |
| (pm): New debug routine. |
| (Set_Finalize_Address): New routine. |
| * s-finmas.ads (pm): New debug routine. |
| (Set_Finalize_Address): New routine. |
| * s-stposu.adb (Allocate_Any_Controlled): Code reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr-gcc.adb (GCC_Exception_Access, GNAT_GCC_Exception_Access): |
| Remove convention C. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * s-taprop-vms.adb (Get_Exc_Stack_Addr): Remove. |
| (Initialize_TCB): Remove Exc_Stack_Ptr initialization. |
| (Finalize_TCB): Remove its finalization. |
| (Initialize): Remove assignment of GET_Exc_Stack_Addr |
| * s-soflin.adb (NT_Exc_Stack): Remove |
| (Get_Exc_Stack_Addr_NT): Likewise. |
| (Get_Exc_Stack_Addr_Soft): Likewise. |
| * s-soflin.ads (Get_Exc_Stack_Addr_NT): Remove. |
| (Get_Exc_Stack_Addr): Likewise. |
| (Get_Exc_Stack_Addr_Soft): Likewise |
| * s-taspri-vms.ads (Exc_Stack_T): Remove. |
| (Exc_Stack_Ptr_T): Likewise. |
| (Private_Data): Remove Exc_Stack_Ptr component. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * raise-gcc.c (get_ip_from_context): New function. Factorize code. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * gnat_ugn.texi: Fix aix and x86-solaris info for run-time. |
| |
| 2011-08-29 Geert Bosch <bosch@adacore.com> |
| |
| * s-gearop.ads (Back_Substitute, Diagonal, Forward_Eliminate, |
| L2_Norm, Swap_Column): New generic subprograms |
| * s-gearop.adb (Back_Substitute, Diagonal, Forward_Eliminate, |
| L2_Norm, Swap_Column): Implement new subprograms in order to |
| eliminate dependency on BLAS and LAPACK libraries in |
| Ada.Numerics.Generic_Real_Arrays and eventually also the complex |
| version. Forward_Eliminate/Back_Substitute can be used to put a |
| matrix in row echelon or reduced row echelon form using partial |
| pivoting. |
| * a-ngrear.adb: (Back_Substitute, Diagonal, Forward_Eleminate, |
| Swap_Column): Instantiate from System.Generic_Array_Operations. |
| ("*", "abs"): Implement by instantiation from Generic_Array_Operations. |
| (Sqrt): Local function for simple computation of square root without |
| adding dependencies on Generic_Elementary_Functions. |
| (Swap): New subprogram to exchange floating point numbers. |
| (Inverse): Reimplement using Jordan-Gauss elimination. |
| (Jacobi): New procedure implementing Jacobi's method for computation |
| of eigensystems, based on Rutishauser's implementation. |
| (L2_Norm): Implement directly using the inner product. |
| (Sort_Eigensystem): Sort eigenvalue/eigenvector pairs in order of |
| decreasing eigenvalue as required by the Ada RM. |
| (Swap_Column): New helper procedure for Sort_Eigensystem. |
| Remove with of System.Generic_Real_BLAS and System.Generic_Real_LAPACK. |
| Add with of Ada.Containers.Generic_Anonymous_Array_Sort, for |
| Sort_Eigensystems. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * put_scos.adb (Put_SCOs): Do not emit a newline for an empty |
| statements line. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-finmas.adb (Finalize): Check Finalize_Address of the master rather |
| than the current node. |
| * s-finmas.ads: Move field Finalize_Address from type FM_Node to |
| Finalization_Master. The list headers have two fields instead of three. |
| This should fix alignment issue but subpool allocations are now |
| unusable. Alphabetize subprograms. |
| * s-stposu.adb (Allocate_Any_Controlled): Use the offset rather than |
| the size of the header when converting the beginning of the object to |
| a FM_Node. Set the master's Finalize_Address attribute if not already |
| set. |
| (Deallocate_Any_Controlled): Use the offset rather than the size of the |
| header when converting the beginning of the object to a FM_Node. |
| |
| 2011-08-29 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch11.adb (Expand_N_Raise_Statement): Don't suppress expansion of |
| reraise when compiling for CodePeer. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * a-iteint.ads, Makefile.rtl: Add missing compilation of a-iteint.ads, |
| now needed by a-convec.adb. Fix warning. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Build_Allocate_Deallocate_Proc): Add a guard for the |
| processing of TSS routine Finalize_Address when compiling in |
| CodePeer_Mode. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * a-strunb.ads, einfo.ads, g-comlin.ads, sem_ch6.adb, |
| sem_warn.adb: Minor reformatting. |
| |
| 2011-08-29 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-conf.adb (Get_Config_Switches): Also collect the list of |
| languages from aggregated projects. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb, lib-xref.ads (Traverse_Declarations_Or_Statements, |
| Traverse_Handled_Statement_Sequence, Traverse_Package_Body, |
| Traverse_Package_Declaration, Traverse_Subprogram_Body, |
| Traverse_Compilation_Unit): Add a parameter Inside_Stubs so that bodies |
| for stubs are traversed too when parameter is set |
| (Traverse_All_Compilation_Units): Traverse without going inside stubs |
| (Traverse_Declarations_Or_Statements): Do the special traversing for |
| stubs when required. |
| * sem_util.adb, sem_util.ads (Get_Body_From_Stub): New function to |
| return subprogram or package body from stub. |
| (Is_Subprogram_Stub_Without_Prior_Declaration): New function to detect |
| stubs without prior subprogram decl. |
| |
| 2011-08-29 Vasiliy Fofanov <fofanov@adacore.com> |
| |
| * gnat_ugn.texi: Fix typo. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * s-stposu.adb (Allocate_Any_Controlled): Reimplement the mechanism |
| which accounts for size vs alignment issues and calculates the size of |
| the list header. |
| (Deallocate_Any_Controlled): Ditto. |
| (Nearest_Multiple_Rounded_Up): New routine. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exstat.adb (String_To_EO): Do no set Cleanup_Flag. |
| * a-exexda.adb (Set_Exception_C_Msg): Ditto. |
| (Set_Exception_Msg): Ditto. |
| * a-exexpr-gcc.adb (Setup_Current_Excep): Ditto. Do not set |
| Private_Data. |
| * a-except.adb, a-except-2005.adb (Save_Occurrence_No_Private): Remove. |
| Use Save_Occurrence instead of Save_Occurrence_No_Private. |
| (Raise_With_Msg): Remove Cleanup_Flag. |
| * a-except.ads, a-except-2005.ads (Exception_Occurrence): Remove |
| Clean_Flag and Private_Data components. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * freeze.adb (Freeze_Record_Type): Ignore packing in Alfa mode, like |
| in CodePeer mode. |
| * sem_ch3.adb (Signed_Integer_Type_Declaration): Correct the generation |
| of an explicitly declared type, so that the base types of the original |
| type and this generated type are the same, and a "type" (not a subtype |
| like previously). |
| * errout.adb (Special_Msg_Delete): Do not issue messages "Size too |
| small" in Alfa mode, like in CodePeer mode. |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ignore rep |
| clauses in Alfa mode. |
| |
| 2011-08-29 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.ads, exp_ch6.adb (Is_Null_Procedure): Move the spec of this |
| function to the package spec. |
| * sem_ch6.adb (Find_Corresponding_Spec, New_Overloaded_Entity): For |
| internally generated bodies of null procedures locate the internally |
| generated spec enforcing mode conformance. |
| (Is_Interface_Conformant): Ensure that the controlling formal of the |
| primitives match. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Inline): In an instance, do not |
| reject the pragma if it appears to apply to a formal subprogram. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch4.adb (Expand_Allocator_Expression): Use consistent name for |
| inner expression, to prevent double evaluation. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr.adb (Propagate_Exception): Remove all the parameters as |
| they were unused. |
| * a-exexpr-gcc.adb (Propagate_Exception): Ditto. |
| * a-except-2005.adb (Propagate_Exception): Adjust spec. |
| (Raise_Current_Excep): Adjust call. |
| (Raise_From_Signal_Handler): Call now simply call Raise_Current_Excep. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_disp.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr.adb (Setup_Exception): Removed. |
| * a-exexpr-gcc.adb (Setup_Exception): Removed. |
| * a-except.adb (Exception_Propagation): Removed. |
| * a-except-2005.adb (Setup_Exception): Removed. |
| (Reraise): Remove call to Setup_Exception. |
| (Reraise_Occurrence): Ditto. |
| (Reraise_Occurrence_Always): Ditto. |
| (Reraise_Occurrence_No_Defer): Ditto. |
| (Transfer_Occurrence): Ditto. |
| * a-exexda.adb (Set_Exception_C_Msg): Remove call to Setup_Exception. |
| (Set_Exception_Msg): Ditto. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-convec.adb, exp_disp.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr-gcc.adb (GNAT_GCC_Exception_Access): Set to convention C. |
| |
| 2011-08-29 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch3.adb (Build_Record_Init_Proc.Build_Init_Procedure): Set |
| Exception_Handlers to No_List instead of Empty_List in the case where |
| there are no handlers. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * gcc-interface/gigi.h (enum standard_datatypes): Add |
| ADT_reraise_zcx_decl |
| (reraise_zcx_decl): New macro. |
| * gcc-interface/trans.c (gnu_incoming_exc_ptr): New variable. |
| (gigi): Set reraise_zcx_decl. |
| (Exception_Handler_to_gnu_zcx): Save and restore gnu_incoming_exc_ptr. |
| (gnat_to_gnu): Handle N_Raise_Statement. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb, exp_ch3.adb, s-stposu.adb, a-undesu.ads, |
| a-undesu.adb: Minor reformatting. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_disp.adb (Check_Premature_Freezing): When building a dispatch |
| table, accept an unfrozen untagged component if it is an actual for a |
| formal incomplete type. |
| * a-convec.ads, a-convec.adb: Instantiate Ada.Iterator_Interfaces to |
| provide new iterator forms over vectors. |
| Introduce type Iterator in package body to implement operations of |
| Reversible_Iterator interface. |
| * a-iteint.ads: Make package pure so it is usable with new container |
| packages, that are categorized Remote_Types. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-exexpr-gcc.adb, a-synbar.adb, sem_ch13.adb: Minor reformatting. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggr_Expr): Call this routine even in the case |
| of <>, because this is the routine that checks for dimensionality |
| errors (for example, for a two-dimensional array, (others => <>) should |
| be (others => (others => <>)). |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * impunit.adb: Add new run-time units. |
| * freeze.adb, exp_ch7.ads, exp_ch7.adb, exp_util.ads, exp_util.adb, |
| s-stposu.ads, s-stposu.adb: Code clean up. |
| Handle protected class-wide or task class-wide types |
| Handle C/C++/CIL/Java types. |
| * s-spsufi.adb, s-spsufi.ads: New files. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Reject test-case on |
| library-level subprogram. |
| * sem_prag.adb (Check_Test_Case): Stricter rules for test-case |
| placement. |
| (Analyze_Pragma): Change name "Normal" for "Nominal" in test-case |
| component. |
| * snames.ads-tmpl: Change name "Normal" for "Nominal" in test-case |
| component. |
| * gnat_rm.texi: Update doc for Test_Case pragma. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr-gcc.adb (Unwind_Exception): Remove default value, made it |
| convention C. |
| (GCC_Exception_Access): New type. |
| (Unwind_DeleteException): New imported procedure |
| (Foreign_Exception): Import it. |
| (GNAT_GCC_Exception): Simply have the occurrence inside. |
| (To_GCC_Exception): New function. |
| (To_GNAT_GCC_Exception): New function. |
| (GNAT_GCC_Exception_Cleanup): New procedure.. |
| (Propagate_GCC_Exception): New procedure. |
| (Reraise_GCC_Exception): New procedure. |
| (Setup_Current_Excep): New procedure. |
| (CleanupUnwind_Handler): Change type of UW_Exception parameter. |
| (Unwind_RaiseException): Ditto. |
| (Unwind_ForcedUnwind): Ditto. |
| (Remove): Removed. |
| (Begin_Handler): Change type of parameter. |
| (End_Handler): Ditto. Now delete the exception if still present. |
| (Setup_Key): Removed. |
| (Is_Setup_And_Not_Propagated): Removed. |
| (Set_Setup_And_Not_Propagated): Ditto. |
| (Clear_Setup_And_Not_Propagated): Ditto. |
| (Save_Occurrence_And_Private): Ditto. |
| (EID_For): Add 'not null' constraint on parameter. |
| (Setup_Exception): Does nothing. |
| (Propagate_Exception): Simplified. |
| * exp_ch11.adb (Expand_N_Raise_Statement): In back-end exception model, |
| re-raise is not expanded anymore. |
| * s-except.ads (Foreign_Exception): New exception - placeholder for |
| non Ada exceptions. |
| * raise-gcc.c (__gnat_setup_current_excep): Declare |
| (CXX_EXCEPTION_CLASS): Define (not yet used) |
| (GNAT_EXCEPTION_CLASS): Define. |
| (is_handled_by): Handle foreign exceptions. |
| (PERSONALITY_FUNCTION): Call __gnat_setup_current_excep. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * a-synbar.adb (Synchronous_Barrier): Some additional clarification. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * a-synbar-posix.adb: Minor reformatting. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * a-exetim-posix.adb, a-exetim-mingw.adb, a-exetim-mingw.ads, |
| a-exetim-default.ads (Interrupt_Clocks_Supported, |
| Separate_Interrupt_Clocks_Supported, Clock_For_Interrupts): Add these |
| definitions to be compliant with AI-0171. The target systems do not |
| support separate account for the execution time of interrupt handlers. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * a-synbar.adb (Wait): Change the order of evaluation of the conditions |
| in the barrier to put first the easiest to evaluate (and the one which |
| will be True more often). More efficient. |
| |
| 2011-08-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * s-atocou-x86.adb: Fix constraint in machine code insertion. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * aspects.ads, aspects.adb: Add new aspects for various pragmas and |
| attributes that are now aspects, as specified by AI05-0229-1. |
| * sem_ch13.adb (Analyze_Aspect_Specifications, |
| Check_Aspect_At_Freeze_Point): Analyze the new aspects. Turn them into |
| pragmas or attribute references, as appropriate. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-synbar.ads, a-synbar.adb, a-synbar-posix.adb, |
| a-synbar-posix.ads: Minor reformatting. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * snames.ads-tmpl: Add name Force. |
| |
| 2011-08-29 Pascal Obry <obry@adacore.com> |
| |
| * prj-nmsc.adb: Minor reformatting. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * a-exetim.ads (Interrupt_Clocks_Supported, |
| Separate_Interrupt_Clocks_Supported, Clock_For_Interrupts): Add these |
| definitions to be compliant with AI-0171. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-ngelfu.adb: Add comments. |
| |
| 2011-08-29 Geert Bosch <bosch@adacore.com> |
| |
| * a-ngelfu.adb (Tan): Do not raise Constraint_Error if the argument is |
| the closest machine number to Pi / 2.0. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * impunit.adb (Non_Imp_File_Names_12): Add a-synbar for new Ada 2012 |
| package Ada.Synchronous_Barriers. |
| * a-synbar.ads, a-synbar.adb, a-synbar-posix.ads, a-synbar-posix.adb: |
| Add new specs and bodies for Ada.Synchronous_Barriers. There is a |
| default implementation using protected objects and another one |
| a-synbar-posix using POSIX barriers as the underlying support. |
| * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for Linux (x86, |
| x86_64, ia64) and MIPS IRIX): Use the a-synbar-posix implementation of |
| Ada.Synchronous_Barriers which uses POSIX barriers (more efficient). |
| Clean up dependencies. |
| * Makefile.rtl (GNATRTL_TASKING_OBJS): Add a-synbar.o |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch7.adb, make.adb, sem_res.adb, exp_intr.adb, |
| exp_dist.adb: Minor code reorganization. |
| Minor reformatting. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_cat.adb (Validate_RACW_Primitive): The return type of an RACW |
| primitive operation must support external streaming if it is not a |
| controlling access result. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sinfo.ads, sem_ch7.adb: Minor reformatting. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Allocator): Check No_Nested_Finalization |
| restriction on allocators, as required by AI05-0013-1. |
| * restrict.ads: Minor comment fix. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr.adb, a-except-2005.ads (Jmpbuf_Address): Move to a-exexpr.adb |
| (To_Jmpbuf_Address): Ditto |
| (builtin_longjmp): Ditto |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_res.adb: Minor reformatting. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): Move special processing for VM targets after the |
| call to Get_Target_Parameters. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch12.adb, par-ch12.adb: Minor reformatting. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_res.adb (Resolve_Allocator): Implement Ada2012-B052. Detect cases |
| where an anonymous access discriminant of a limited designated type |
| appears in a non-immutably limited discriminated type and issue an |
| error message. Add local variable Desig_T and replace all occurrences |
| of Designated_Type. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * a-rttiev.adb (Set_Handler): Update comment to indicate that our |
| implementation is compliant to RM D.15(15/2) after the modification |
| imposed by AI05-0094-1 (binding interpretation). |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, s-tasren.adb, exp_sel.adb, exp_sel.ads, exp_ch11.adb, |
| s-interr-hwint.adb, s-tpobop.adb, sem_ch13.adb: Minor reformatting. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * par-endh.adb (Check_End): For an END where it is mandatory to repeat |
| the scope name, do not report a missing label as a style violation (it |
| will be diagnosed as an illegality). |
| * exp_dist.adb (Add_Params_For_Variant_Components): Fix handling of |
| variant records: Get_Enum_Lit_From_Pos already returns a usage |
| occurrence of the literal, no need to use New_Occurrence_Of. Set Etype |
| on Expr in Integer_Literal case so that it can be used by |
| Build_To_Any_Call. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * exp_sel.ads (Build_Abort_BLock_Handler): New function spec. |
| Adjust comment. |
| * exp_sel.adb (Build_Abort_Block): Use Build_Abort_Block_Handler. |
| (Build_Abort_Block_Handler): New function to build an Abort_Signal |
| exception handler. |
| * exp_ch9.adb (Expand_N_Asynchronous_Select): Call |
| Build_Abort_Block_Handler to build the exception handler. Do not |
| undefer aborts for the Abort_Signal exception handler if back-end |
| exception mechanism. |
| * exp_ch11.adb (Expand_Exception_Handlers): Do not undefer aborts if |
| back_end exceptions for all others and abort_signal. |
| * s-except.ads (ZCX_By_Default): New constant. |
| * a-except-2005.adb (Raise_Exception): Do not defer abort if ZCX. |
| (Raise_Exception_Always): Ditto. |
| (Raise_From_Signal_Handler): Ditto. |
| (Raise_With_Location_And_Msg): Ditto. |
| (Raise_With_Msg): Ditto. |
| (Reraise): Ditto. |
| (Reraise_Occurence): Ditto. |
| (Reraise_Occurrence_Always): Ditto. |
| * s-tasren.adb (Exceptional_Complete_Rendezvous): Defer aborts if ZCX. |
| * s-tpobop.adb: (Exceptional_Complete_Body): Undefer abort if ZCX. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_util.ads (Get_Enum_Lit_From_Pos): Clarify documentation. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * snames.adb-tmpl, sem_ch13.adb: Minor reformatting |
| Minor code reorganization. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * usage.adb (-gnatwy): Fix documentation: this switch applies to Ada |
| 2012, not just Ada 2005. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * gnat_ugn.texi: Indicate that when the compiler is called by gnatmake |
| with a project file or with gprbuid, if -gnatep= is specified, the |
| builder may need to be invoked with -x. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr-gcc.adb: Minor comment fix. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch8.adb: Minor reformatting. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * par-ch2.adb (P_Identifier): Warn that "some" is reserved in Ada 2012. |
| * par-ch4.adb (P_Quantified_Expression): Remove unnecessary code for |
| treating "some" as unreserved in earlier Ada versions. This is now |
| handled in Snames.Is_Keyword_Name. Parse "for some" using Tok_Some, |
| rather than Name_Some, since Tok_Some is now recognized as reserved. |
| * scans.adb (Initialize_Ada_Keywords): Handle Tok_Some like any other |
| reserved word. |
| * scans.ads: Minor comment fixes. |
| * snames.adb-tmpl (Is_Keyword_Name): Handle Ada 2012 reserved words as |
| for other language versions. |
| * scn.adb (Scan_Reserved_Identifier): Remove unnecessary code for |
| treating "some" as unreserved in earlier Ada versions. This is now |
| handled in Snames.Is_Keyword_Name. |
| * par-ch3.adb (P_Defining_Identifier): Warn that "some" is reserved in |
| Ada 2012. |
| (P_Subtype_Mark_Resync): Remove unnecessary code for treating "some" as |
| unreserved in earlier Ada versions. This is now handled in |
| Snames.Is_Keyword_Name. |
| * snames.ads-tmpl (Ada_2012_Reserved_Words): Handle Ada 2012 reserved |
| words as for other language versions. |
| * gnat_ugn.texi (-gnatwy): Fix documentation: this switch applies to |
| Ada 2012, not just Ada 2005. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch13.adb: Additional semantic checks for aspects involved in |
| iterators. |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-comutr.ads, a-comutr.adb, a-cimutr.ads, a-cimutr.adb, |
| a-cbmutr.ads, a-cbmutr.adb (Find_In_Subtree): Remove superfluous |
| Container parameter. |
| (Ancestor_Find): ditto. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * par-endh.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * a-exexpr-gcc.adb (Unwind_Action) Rewrite as an integer with constants. |
| (GNAT_GCC_Exception): Remove N_Cleanups_To_Trigger component. |
| (Adjust_N_CLeanups_For): Remove. |
| (CleanupUnwind_Handler): Call Unhandled_Exception_Terminate when end of |
| stack is reached. |
| (Propgate_Exception): Adjust. |
| * raise-gcc.c: Add a few static/const. |
| (Adjust_N_Cleanups_For): Remove declaration. |
| (PERSONALITY_FUNCTION): Remove code dealing with N_Cleanups_To_Trigger. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb: Use type of function return when rewriting as object |
| declaration. |
| |
| 2011-08-29 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_type.adb: Minor reformatting. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * makeutl.adb: Minor reformatting. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Object_Renaming): If the renamed object is a |
| function call of a limited type, the expansion of the renaming is |
| complicated by the presence of various temporaries and subtypes that |
| capture constraints of the renamed object. |
| Rewrite node as an object declaration, whose expansion is simpler. |
| Given that the object is limited there is no copy involved and no |
| performance hit. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sinfo.ads, make.adb, s-pooglo.adb, sem_ch12.adb, |
| freeze.adb, sem_ch6.adb, par-ch12.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads, |
| system-tru64.ads, system-irix-n32.ads, system-vxworks-arm.ads, |
| system-linux-hppa.ads, system-linux-s390.ads, |
| system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads, |
| system-vms_64.ads, system-vxworks-sparcv9.ads, system-linux-ppc.ads, |
| system-aix64.ads, system-lynxos-ppc.ads, system-linux-sh4.ads, |
| system-solaris-x86.ads, system-linux-x86_64.ads, system-linux-x86.ads, |
| system-vxworks-ppc.ads, system-hpux.ads, system-darwin-ppc.ads, |
| system-solaris-sparc.ads, system-lynxos-x86.ads, |
| system-vxworks-m68k.ads, system-hpux-ia64.ads, system-irix-o32.ads, |
| system-solaris-x86_64.ads, system-mingw-x86_64.ads, |
| system-vxworks-mips.ads, system-linux-sparc.ads, system-vms-ia64.ads, |
| system-freebsd-x86.ads, system-aix.ads, system-darwin-x86_64.ads, |
| system-vxworks-x86.ads: Remove GCC_ZCX_Support. |
| * s-taprop-posix.adb, s-taprop-irix.adb, s-taprop-vxworks.adb, |
| s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-solaris.adb: Ditto. |
| * opt.ads: Adjust comment. |
| * targparm.ads, targparm.adb: Remove GCC_ZCX_Support_On_Target. |
| * gnat1drv.adb: Do not check for GCC_ZCX_Support_On_Target. |
| * system.ads: Move GCC_ZCX_Support to obsolete entries. |
| |
| 2011-08-29 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Do_Complete): Resolve symbolic links when a relative |
| file name is specified on the gnatmake or gprbuild command line, and |
| before we search for that file in the project. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_type.adb (Within_Instance): New predicate in Collect_Interps, |
| used to determine whether a possible interpretation for an overloadable |
| entity is declared within the current instantiation and should be |
| included in the candidate set. |
| |
| 2011-08-29 Vasiliy Fofanov <fofanov@adacore.com> |
| |
| * gnat_rm.texi, gnat_ugn.texi: Clean ups. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Actuals): Use base type to determine whether an |
| access subtype is access_to_subprogram, when applying checks for |
| RM 3.10.2 (27). |
| |
| 2011-08-29 Matthew Heaney <heaney@adacore.com> |
| |
| * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Splice_Subtree): Only check |
| for sibling when common parent. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * get_scos.adb: Literals of Pragma_Id are pragma names prefixed with |
| "pragma_". |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Enable freeze actions |
| for the return type when in ASIS mode. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): Get the default search dirs, then the target |
| parameters after getting the Builder switches, as the Builder switches |
| may include --RTS= and that could change the default search dirs. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Make_Adjust_Call): Rewrite to mimic the structure of |
| Make_Final_Call. Move the processing for class-wide types before the |
| processing for derivations from [Limited_]Controlled. |
| (Make_Final_Call): Move the processing for class-wide types before the |
| processing for derivations from [Limited_]Controlled. |
| * s-stposu.adb (Allocate_Any_Controlled): Correct the membership check. |
| Add code to account for alignments larger than the list header. Add a |
| comment illustrating the structure of the allocated object + padding + |
| header. |
| (Deallocate_Any_Controlled): Add code to account for alignments larger |
| than the list header. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sinfo.ads, sinfo.adb: New node kind |
| N_Formal_Incomplete_Type_Definition, related flags. |
| par-ch12.adb (P_Formal_Type_Declaration, G_Formal_Type_Definition): |
| Parse formal incomplete types. |
| * sem.adb (Analyze): Formal_Incomplete_Type_Definitions are handled in |
| sem_ch12. |
| * sem_ch7.adb (Analyze_Package_Specification, Unit_Requires_Body): |
| Formal incomplete types do not need completion. |
| * sem_ch12.adb (Analyze_Formal_Incomplete_Type, |
| Validate_Incomplete_Type_Instance): New procedures to handle formal |
| incomplete types. |
| * freeze.adb (Freeze_Entity): Do not freeze the subtype of an actual |
| that corresponds to a formal incomplete type. |
| * sprint.adb: Handle formal incomplete type declarations. |
| * exp_util.adb (Insert_Actions): An incomplete_type_definition is not |
| an insertion point. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-fihema.ads, a-fihema.adb: Unit removed. |
| * a-undesu.ads, a-undesu.adb: New unit implementing |
| Ada.Unchecked_Deallocate_Subpool. |
| * einfo.adb: Remove Associated_Collection from the node usage. |
| Add Finalization_Master to the node usage. |
| (Associated_Collection): Removed. |
| (Finalization_Master): New routine. |
| (Set_Associated_Collection): Removed. |
| (Set_Finalization_Master): New routine. |
| (Write_Field23_Name): Remove Associated_Collection from the output. Add |
| Finalization_Master to the output. |
| * einfo.ads: Remove attribute Associated_Collection and its uses in |
| entities. |
| Add new attribute Finalization_Master along with its uses in entitites. |
| (Associated_Collection): Removed along with its pragma import. |
| (Finalization_Master): New routine along with a pragma import. |
| (Set_Associated_Collection): Removed along with its pragma import. |
| (Set_Finalization_Master): New routine along with a pragma import. |
| * exp_ch3.adb (Expand_Freeze_Array_Type): Replace call to |
| Build_Finalization_Collection with Build_Finalization_Master. |
| (Expand_Freeze_Record_Type): Move the generation of Finalize_Address |
| before the bodies of the predefined routines. Add comment explaining |
| this. Replace call to Build_Finalization_Collection with |
| Build_Finalization_Master. |
| (Freeze_Type): Replace call to Build_Finalization_Collection with |
| Build_Finalization_Master. |
| (Make_Finalize_Address_Body): Comment reformatting. |
| (Make_Predefined_Primitive_Specs): Code reformatting. |
| (Stream_Operation_OK): Update comment mentioning finalization |
| collections. Replace RE_Finalization_Collection with |
| RE_Finalization_Master. |
| * exp_ch4.adb (Complete_Controlled_Allocation): Replace call to |
| Associated_Collection with Finalization_Master. Replace call to |
| Build_Finalization_Collection with Build_Finalization_Master. |
| (Expand_Allocator_Expression): Replace call to Associated_Collection |
| with Finalization_Master. Replace call to Set_Associated_Collection with |
| Set_Finalization_Master. Remove the generation of |
| Set_Finalize_Address_Ptr. |
| (Expand_N_Allocator): Replace call to Associated_Collection with |
| Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr. |
| * exp_ch6.adb (Add_Collection_Actual_To_Build_In_Place_Call): Renamed to |
| Add_Finalization_Master_Actual_To_Build_In_Place_Call. Update the |
| comment on usage. Replace call to Needs_BIP_Collection with |
| Needs_BIP_Finalization_Master Remplace BIP_Collection with |
| BIP_Finalization_Master. Update all comments which mention finalization |
| collections. Replace Associated_Collection with |
| Finalization_Master. Replace Build_Finalization_Collection with |
| Build_Finalization_Master. |
| (BIP_Formal_Suffix): Update BIP_Collection's case. |
| (Build_Heap_Allocator): Update the related comment. Rename local |
| variable Collect to Fin_Mas_Id and update its occurrences. Update |
| comments which mention finalization collections. Replace |
| Set_Associated_Collection with Set_Finalization_Master. |
| (Expand_Call): Update the code which detects a special piece of library |
| code for .NET/JVM. |
| (Make_Build_In_Place_Call_In_Allocator): Replace the call to |
| Add_Collection_Actual_To_Build_In_Place_Call with |
| Add_Finalization_Master_Actual_To_Build_In_Place_Call. Remove the code |
| which generates a call to Make_Set_Finalize_Address_Ptr_Call. |
| (Make_Build_In_Place_Call_In_Anonymous_Context): Replace call to |
| Add_Collection_Actual_To_Build_In_Place_Call with |
| Add_Finalization_Master_Actual_To_Build_In_Place_Call. |
| (Make_Build_In_Place_Call_In_Assignment): Replace call to |
| Add_Collection_Actual_To_Build_In_Place_Call with |
| Add_Finalization_Master_Actual_To_Build_In_Place_Call. |
| (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. |
| * exp_ch6.ads: Rename BIP_Collection to BIP_Finalization_Master. |
| (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. |
| * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Update comment on usage. |
| Rename local variable Collect to Fin_Mas_Id and update its occurrences. |
| Replace call to Set_Associated_Collection with Set_Finalization_Master. |
| (Build_Finalization_Collection): Renamed to Build_Finalization_Master. |
| Replace the call to Associated_Collection with Finalization_Master. |
| Rename local variable Coll_Id to Fin_Mas_Id and update its occurrences. |
| Update the way finalization master names are generated. Update the |
| retrieval of the correct access type which will carry the pool and |
| master attributes. |
| (Make_Final_Call): Reimplement the way [Deep_]Finalize is retrieved. |
| (Make_Finalize_Address_Body): Abstract types do not need |
| Finalize_Address. Code reformatting. |
| (Make_Finalize_Address_Stmts): Update comment on usage. |
| (Make_Set_Finalize_Address_Ptr_Call): Removed. |
| (Process_Declarations): Update comments. |
| * exp_ch7.ads (Build_Finalization_Collection): Renamed to |
| Build_Finalization_Master. Update associated comment. |
| (Make_Set_Finalize_Address_Ptr_Call): Removed. |
| * exp_ch13.adb: Update comments which mention finalization collections. |
| (Expand_N_Free_Statement): Replace the call to Associated_Collection |
| with Finalization_Master. |
| * exp_util.adb (Build_Allocate_Deallocate_Proc): Reimplemented to |
| create calls to routines Allocate_Any_Controlled and |
| Deallocate_Any_Controlled. |
| (Find_Finalize_Address): New routine. |
| (Is_Allocate_Deallocate_Proc): Update the RTE entities used in the |
| comparison. |
| (Requires_Cleanup_Actions): Update the comment on freeze node |
| inspection. |
| * exp_util.ads: Remove comment on generated code for |
| Build_Allocate_Deallocate_Proc. The code is now quite complex and it |
| is better to simply look in the body. |
| * freeze.adb (Freeze_All): Update the comment of finalization |
| collections. Replace the call to Associated_Collection with |
| Finalization_Master. Replace the call to Build_Finalization_Collection |
| with Build_Finalization_Master. |
| * impunit.adb: Add a-undesu and s-stposu to the list of units. |
| * Makefile.rtl: Add files a-undesu, s-finmas and s-stposu. Remove file |
| a-fihema. |
| * rtsfind.adb (Get_Unit_Name): Remove the processing for children of |
| Ada.Finalization. Add processing for children of System.Storage_Pools. |
| * rtsfind.ads: Remove the naming of second level children of |
| Ada.Finalization. |
| Remove Ada_Finalization_Heap_Management from the list of units. |
| Remove subtype Ada_Finalization_Child. |
| Remove the following subprogram entities: |
| |
| RE_Allocate |
| RE_Deallocate |
| RE_Finalization_Collection |
| RE_Finalization_Collection_Ptr |
| RE_Set_Finalize_Address_Ptr |
| |
| Add the naming of second level children of System.Storage_Pools. |
| Add System_Finalization_Masters and System_Storage_Pools_Subpools to |
| the list of units. |
| Add subtype System_Storage_Pools_Child. |
| Add the following subprogram entities to System.Finalization_Masters: |
| |
| RE_Finalization_Master |
| RE_Finalization_Master_Ptr |
| |
| Add the following subprogram entities to System.Storage_Pools.Subpools: |
| |
| RE_Allocate_Any_Controlled |
| RE_Deallocate_Any_Controlled |
| RE_Root_Storage_Pool_With_Subpools |
| RE_Root_Subpool |
| RE_Subpool_Handle |
| |
| Move the following subprogram entities from |
| Ada.Finalization.Heap_Management to System.Finalization_Masters: |
| |
| RE_Add_Offset_To_Address |
| RE_Attach |
| RE_Base_Pool |
| RE_Detach |
| |
| * sem_ch3.adb (Access_Type_Declaration): Replace the call to |
| Set_Associated_Collection with Set_Finalization_Master. |
| * sem_ch6.adb (Create_Extra_Formals): Update the way extra formal |
| BIP_Finalization_Master is created. |
| * s-finmas.adb: New unit System.Finalization_Masters. |
| * s-finmas.ads: New unit System.Finalization_Masters. |
| * s-stopoo.ads, s-stopoo.adb: Minor code reformatting. |
| * s-stposu.ads, s-stposu.adb: New unit implementing |
| System.Storage_Pools.Subpools. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * tbuild.adb: Add assertion. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * s-pooglo.adb: Minor reformatting. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Assignment_Statement): if the left-hand side is |
| an indexed component of a packed array whose element type is a record |
| with a representation clause different from that of the right-hand |
| side, generate a temporary to minimuze the number of bit-field |
| operations generated. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_util.adb (Insert_Actions): Use clauses can be part of lists of |
| declarations, and thus are likely insertion points for actions. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * einfo.ads: Minor comment fix. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * frontend.adb, gnat1drv.adb: Minor reformatting. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * s-pooglo.adb (Allocate, Deallocate): Take into account the alignment. |
| * a-fihema.adb (Allocate, Deallocate): Ditto. Possibly add padding |
| space in front of the header. |
| |
| 2011-08-29 Johannes Kanig <kanig@adacore.com> |
| |
| * frontend.adb (Frontend): Exit after creating Standard package when |
| -gnatd.H is present. |
| * gnat1drv.adb (Gnat1drv): Call Backend right away when -gnatd.H is |
| present. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, mlib-prj.adb, prj.adb, prj.ads, ttypes.ads, sem_ch4.adb, |
| makeutl.adb, makeutl.ads, atree.ads, snames.adb-tmpl, |
| snames.ads-tmpl: Minor reformatting. |
| |
| 2011-08-29 Philippe Gil <gil@adacore.com> |
| |
| * prj.adb (Reset_Units_In_Table): New procedure. |
| Reset units to avoid access to freed memory. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * get_scos.adb: When reading a P statement SCO without a pragma name |
| (from an older ALI file), ensure that the Pragma_Name component is set |
| to Unknown_Pragma (not left uninitialized). |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Get_Directories): New procedure moved from Buildgpr and |
| modified to compute correctly the object path of a SAL project that is |
| extending another library project. |
| (Write_Path_File): New procedure. |
| * makeutl.ads (Directories): New table moved from Buildgpr |
| (Get_Directories): New procedure moved from Buildgpr |
| (Write_Path_File): New procedure |
| * mlib-prj.adb (Build_Library): Use Makeutl.Get_Directories to set the |
| paths before binding SALs, instead of Set_Ada_Paths. |
| * prj-env.adb (Set_Path_File_Var): Procedure has been moved to package |
| Prj. |
| * prj.adb (Set_Path_File_Var): New procedure moved from Prj.Env |
| (Current_Source_Path_File_Of): New function |
| (Set_Current_Object_Path_File_Of): New procedure |
| (Current_Source_Object_File_Of): New function |
| (Set_Current_Object_Path_File_Of): New procedure |
| * prj.ads (Set_Path_File_Var): New procedure moved from Prj.Env |
| (Current_Source_Path_File_Of): New function |
| (Set_Current_Object_Path_File_Of): New procedure |
| (Current_Source_Object_File_Of): New function |
| (Set_Current_Object_Path_File_Of): New procedure |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Assignment_Statement): For an assignment to a |
| packed entity, use a bit-field assignment only if there is no change of |
| representation. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * rtsfind.ads, exp_ch3.adb (In_Runtime): Minor code improvement, use |
| Is_RTU instead of using Chars comparisons. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Do not create a |
| temporary object if the actual is constrained, and the discriminants |
| read from the stream don't match. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * sem_attr.adb, exp_attr.adb: Add handling of |
| Attribute_System_Allocator_Alignment |
| * snames.ads-tmpl: Add Name_System_Allocator_Alignment and |
| Attribute_System_Allocator_Alignment. |
| * ttypes.ads, get_targ.ads: Add Get_System_Allocator_Alignment. |
| * gcc-interface/targtyps.c, gcc-interface/utils2.c, |
| gcc-interface/gigi.h: Renames get_target_default_allocator_alignment to |
| get_target_system_allocator_alignment. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update |
| dependencies. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * exp_ch3.adb (In_Runtime): Fix typo. |
| |
| 2011-08-29 Bob Duff <duff@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Allocator): Analyze the subpool specification. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): If the entity is tagged |
| and a separate tag assignment is generated, ensure that the tag |
| assignment is analyzed. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * atree.ads, atree.adb (Copy_Separate_List): New function that applies |
| Copy_Separate_Tree to a list of nodes. Used to create disjoint copies |
| of statement lists that may contain local declarations. |
| * exp_ch9.adb (Expand_N_Timed_Entry_Call): Use Copy_Separate_List to |
| duplicate the triggering statements needed for the expansion of this |
| construct, when the trigger is a dispatching call to a synchronized |
| primitive. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnat_rm.texi: Add doc for 'Elab_Subp_Body. |
| * bindgen.adb: Add comments. |
| * snames.adb-tmpl (Is_Attribute_Name): Only recognize 'Elab_Subp_Body |
| in CodePeer mode. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_attr.adb: Minor reformatting. |
| Minor code reorganization and commenting. |
| * par_sco.adb, checks.adb, sem_attr.adb, get_scos.adb: Minor |
| reformatting. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * get_scos.adb: Ignore chaining indicators not currently supported |
| by Ada. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * system.ads: Minor editing. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * bindgen.adb (Gen_Elab_Calls): Generate calls to subp'Elab_Subp_Body in |
| CodePeer mode. |
| * sem_attr.ads, sem_attr.adb, exp_Attr.adb, sem_ch6.adb: Add handling of |
| Attribute_Elab_Subp_Body. |
| * snames.ads-tmpl (Attribute_Elab_Subp_Body, Name_Elab_Subp_Body): New. |
| * sem_util.adb: Update comments. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb, scos.adb, scos.ads, put_scos.adb, get_scos.adb: Record |
| pragma name for each SCO statement corresponding to a pragma. |
| |
| 2011-08-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * opt.ads: Minor editing. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * gnat1drv.adb (Adjust_Global_Switches): Remove options for ALFA mode |
| that only made sense for CodePeer mode. |
| |
| 2011-08-29 Jose Ruiz <ruiz@adacore.com> |
| |
| * targparm.ads (Support_64_Bit_Divides_On_Target): Remove this flag |
| which is no longer used. |
| * targparm.adb (S64, S64_Str, Get_Target_Parameters): Remove the |
| handling of the 64-bit division check. |
| * exp_ch4.adb (Expand_N_Op_Divide): Remove the check for 64-bit |
| division available. |
| * system*.ads (Support_64_Bit_Divides): Remove this flag which is no |
| longer used. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * get_scos.adb: Minor reformatting. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Process_Statements_For_Controlled_Objects): Whenever a |
| statement list is wrapped in a block, the block is explicitly analyzed |
| in order to properly redecorate the entities and create a servicing |
| finalizer. |
| |
| 2011-08-29 Tristan Gingold <gingold@adacore.com> |
| |
| * sinfo.ads, sinfo.adb (Zero_Cost_Handling): Remove. |
| (Set_Zero_Cost_Handling): Remove. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting |
| |
| 2011-08-29 Geert Bosch <bosch@adacore.com> |
| |
| * s-vaflop-vms-alpha.adb (Neg_F): Use subtraction instead of negation |
| instruction, as the latter may produce -0.0, which is not a valid VAX |
| F float number. |
| (Neg_G): Likewise for VAX F float. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb: Minor reformatting. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb: Minor comment update. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * checks.adb (Apply_Type_Conversion_Checks): Use the Underlying_Type of |
| the operand type. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb (Traverse_Declarations_Or_Statements): Do not flush |
| current statement sequence on a generic instantiation or a subprogram |
| declaration. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * sem_type.adb, einfo.ads, freeze.adb, exp_ch4.adb, sem_ch13.adb: |
| Minor reformatting. |
| |
| 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)): |
| Correct the check which involves the freeze node of a controlled or |
| access-to-controlled type. |
| |
| 2011-08-29 Geert Bosch <bosch@adacore.com> |
| |
| * sem_warn.adb (Check_Code_Statement): Remove check for consecutive Asm |
| statements. |
| * s-vaflop-vms-alpha.adb: Remove bogus Volatile => True arguments from |
| Asm statements. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Array_Type_Declaration): Insert a subtype declaration |
| for every index type and component type that is not a subtype_mark. |
| (Process_Subtype): Set Etype of subtype. |
| |
| 2011-08-29 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbmutr.adb, a-cimutr.adb, a-comutr.adb, prj-nmsc.adb: Minor code |
| reorganization. Minor reformatting. |
| |
| 2011-08-29 Steve Baird <baird@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_Expon): Suppress N_Op_Expon node expansion |
| for CodePeer and ALFA modes. |
| |
| 2011-08-29 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_type.adb (Collect_Interps): Within an instance, collect a homonym |
| that comes from an enclosing scope if it is not the renaming of an |
| actual, to handle properly a spurious ambiguity in an instance. |
| |
| 2011-08-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.adb (Alignment_Check_For_Esize_Change): Rename to... |
| (Alignment_Check_For_Size_Change): ...this. Add SIZE parameter and |
| use it instead of the Esize of the first parameter. |
| (Analyze_Attribute_Definition_Clause) <Object_Size>: Adjust call to |
| above change. |
| <Size>: Likewise. Call it for composite types on the RM size. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_Not): Do not expand not on array. |
| * sem_util.adb (Unique_Name): Correct behaviour for names of |
| compilation units. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb (Check_Precondition_Postcondition): In formal |
| verification mode, analyze pragma expression for correctness, for |
| pre/post on library-level subprogram, as it is not expanded later. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * exp_aggr.adb (Expand_Array_Aggregate): Do not expand array aggregates |
| in formal verification. |
| |
| 2011-08-29 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_util.adb: Minor reformatting. |
| * freeze.adb, sem_ch13.adb: Fix comment: Bit_Order is an attribute, |
| there's no pragma. |
| * par_sco.ads, par_sco.adb: Update comments. |
| |
| 2011-08-29 Yannick Moy <moy@adacore.com> |
| |
| * einfo.adb, einfo.ads: Remove flag Is_Postcondition_Proc and |
| associated getter/setter. |
| * sem_ch6.adb: Remove reference to Is_Postcondition_Proc. |
| |
| 2011-08-29 Vincent Celier <celier@adacore.com> |
| |
| * prj-attr.adb: New Compiler attribute Dependency_Kind and Language_Kind |
| * prj-conf.adb: Add_Default_GNAT_Naming_Scheme: Add a package Compiler |
| with declarations for Language_Kind and Dependency_Kind for Ada. |
| * prj-nmsc.adb (Check_Unit_Name): New name of procedure Check_Ada_Name |
| (Process_Compiler): Take into account the new attributes Dependency_Kind |
| and Language_Kind. |
| (Check_Configuration): Check if language kind is unit based, not if the |
| language name is Ada. |
| (Process_Exceptions_Unit_Based): Ditto |
| (Add_Language): Remove default additions of language and dependency kind |
| * prj.ads: Minor comment change |
| * snames.ads-tmpl: New standard names Dependency_Kind and Language_Kind |
| |
| 2011-08-29 Johannes Kanig <kanig@adacore.com> |
| |
| * debug.adb: Update comments. |
| |
| 2011-08-24 Joseph Myers <joseph@codesourcery.com> |
| |
| * gcc-interface/Make-lang.in (CFLAGS-ada/tracebak.o) |
| (CFLAGS-ada/targext.o, CFLAGS-ada/cio.o, CFLAGS-ada/init.o) |
| (CFLAGS-ada/initialize.o, CFLAGS-ada/raise.o): New. |
| (ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o) |
| (ada/initialize.o, ada/raise.o): Remove explicit compilation rules. |
| |
| 2011-08-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * gcc-interface/Makefile.in (PICFLAG_FOR_TARGET): New. |
| (GNATLIBCFLAGS_FOR_C): Replace |
| TARGET_LIBGCC2_CFLAGS by PICFLAG_FOR_TARGET. |
| (gnatlib-shared-default, gnatlib-shared-dual-win32) |
| (gnatlib-shared-win32, gnatlib-shared-darwin, gnatlib-shared) |
| (gnatlib-sjlj, gnatlib-zcx): Likewise. |
| |
| 2011-08-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Makefile.in (raise-gcc.o): Fix previous change. |
| |
| * gcc-interface/gigi.h (enumerate_modes): Fix formatting. |
| |
| * gcc-interface/trans.c (Subprogram_Body_to_gnu): Revert latest change. |
| |
| 2011-08-05 Nicolas Roche <roche@adacore.com> |
| |
| * gcc-interface/Makefile.in: Don't use directly ../xgcc to build shared |
| libgnat. Use rather the value of GCC_FOR_TARGET. Fix issue with |
| canadian cross. |
| * gcc-interface/Make-lang.in: Add support for canadian cross setting. |
| |
| 2011-08-05 Matthew Heaney <heaney@adacore.com> |
| |
| * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Child_Count, Child_Depth): |
| subprogram bodies declared out-of-order. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Unique_Name): only prefix with "standard" the names of |
| entities directly in package Standard, otherwise skip the standard |
| prefix. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbmutr.adb: Minor reformatting |
| (Allocate_Node): refactor node allocation algorithm |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * opt.ads, opt.adb (Debug_Pragmas_Disabled): New switch. |
| * sem_prag.adb (Analyze_Pragma, case Debug_Policy): Implement Disable |
| mode. |
| (Analyze_Pragma, case Check_Policy): Ditto. |
| * sem_prag.ads (Check_Disabled): New function |
| * snames.ads-tmpl: Add Name_Disable. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Document implementation-defined policy DISABLE for |
| pragmas Assertion_Policy, Check_Policy, Debug_Policy. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma, case Inline): reject an Inline pragma |
| that appears in a generic formal part and applies to a formal |
| subprogram. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * a-cbmutr.ads: Minor reformatting. |
| |
| 2011-08-05 Matthew Heaney <heaney@adacore.com> |
| |
| * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Read): do not use T'Valid |
| to check count, check sign of value instead. |
| * a-comutr.adb, a-cimutr.adb (Write): return immediately if tree empty |
| (Copy_Subtree): allocate copy of source element |
| (Equal_Subtree): compare elements, not access objects |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * gnat_ugn.texi: Fix VMS alternative. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch11.adb: Add comment. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb: Minor comment fix. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * scng.adb (Error_Unterminated_String): Improve flag position when |
| comma present. |
| |
| 2011-08-05 Matthew Heaney <heaney@adacore.com> |
| |
| * Makefile.rtl, impunit.adb: Added a-cbmutr.ad[sb] (bounded multiway |
| tree containers). |
| * a-cbmutr.ads, a-cbmutr.adb: This is the new Ada 2012 unit for bounded |
| multiway tree containers. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * styleg.adb (Check_Comment): Implement comment spacing of 1 or 2 |
| * stylesw.adb: Implement -gnatyC to control comment spacing |
| * stylesw.ads (Style_Check_Comments_Spacing): New switch (set by |
| -gnatyc/C). |
| * usage.adb: Add line for -gnatyC. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_ugn.texi: Document -gnatyC. |
| * vms_data.ads: Implement COMMENTS1/COMMENTS2 (retaining COMMENTS as a |
| synonym for COMMENTS2). |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * par_sco.adb, sem_ch3.adb, scos.ads, a-iteint.ads, sem_ch12.adb, |
| a-cimutr.adb, a-cimutr.ads, sem_util.ads, sem_res.adb, a-fihema.adb, |
| sem_ch4.adb, lib-xref-alfa.adb, exp_disp.adb, a-comutr.adb, |
| a-comutr.ads, lib-xref.adb: Minor reformatting. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch11.adb (Analyze_Raise_Statement): Kill assignment to formal |
| warning if there is an exception handler present. |
| |
| 2011-08-05 Pascal Obry <obry@adacore.com> |
| |
| * a-iteint.ads: Fix copyright year. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb (Traverse_Declarations_Or_Statements): Do not generate a |
| statement SCO for a USE clause or a representation clause. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Collect_ALFA): generate the proper relation |
| between body and spec for stub. |
| (Detect_And_Add_ALFA_Scope): take into account subprogram stub |
| * lib-xref.adb (Enclosing_Subprogram_Or_Package): in the case of a |
| pragma precondition or postcondition, for which the enclosing |
| subprogram or package in the AST is not the desired one, return empty. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * g-expect.adb: Minor reformatting. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-fihema.adb: Comment out OS_Lib. |
| |
| 2011-08-05 Matthew Heaney <heaney@adacore.com> |
| |
| * Makefile.rtl, impunit.adb: Added a-c[oi]mutr.ad[sb] |
| (unbounded multiway tree containers) and a-iteint.ads. |
| * a-comutr.ads, a-comutr.adb: |
| This is the new Ada 2012 unit for unbounded multiway tree containers |
| * a-cimutr.ads, a-cimutr.adb |
| This is the new Ada 2012 unit for indefinite multiway tree containers |
| * a-iteint.ads: New file. |
| |
| 2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * gcc-interface/Makefile.in (raise-gcc.o): Search $(srcdir)/../libgcc. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * sinfo.ads, sinfo.adb (Subpool_Handle_Name): New attribute for |
| subpools. |
| * par-ch4.adb (P_Allocator): Parse new subpool specification syntax. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb (Try_Container_Indexing): New procedure to implement the |
| general indexing aspects of Ada2012. Called when analyzing indexed |
| components when other interpretations fail. |
| * sem_ch8.adb (Find_Direct_Name): check for implicit dereference only |
| in an expression context where overloading is meaningful. This excludes |
| the occurrence in an aspect specification (efficiency only). |
| * sem_attr.adb (Analyze_Attribute): indicate that the attributes |
| related to iterators can be set by an attribute specification, but |
| cannot be queried. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): handle |
| Constant_Indexing and Variable_Indexing. |
| (Check_Indexing_Functions): New procedure to perform legality checks. |
| Additional semantic checks at end of declarations. |
| |
| 2011-08-05 Sergey Rybin <rybin@adacore.com> |
| |
| * tree_io.ads: Update ASIS_Version_Number because of the change of the |
| order of calling Tree_Write/Tree_Read routines made for aspects. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-fihema.adb (Finalize): Fix race condition. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Package_Instantiation, |
| Need_Subprogram_Instance_Body): do not generate instance bodies in ALFA |
| mode. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_type.adb (Specific_Type): in an instance, the type-specific |
| operand of an equality check that involves null may have a private |
| type. Use full view to determine legality of construct. |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * gnatcmd.adb (Get_Closure): Do not crash when it is not possible to |
| delete or close the file when the call to gnatmake was successful. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * gnat1drv.adb (Adjust_Global_Switches): in ALFA mode, set |
| Global_Discard_Names. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sinfo.ads: comments on use of entity field for aspect specifications. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Reset_Entity): If the entity field of the associated |
| node is not itself an entity but a selected component, it is a |
| rewritten parameterless call to an en enclosing synchronized operation, |
| and this expansion will be performed again in the instance, so there is |
| no global information to preserve. |
| |
| 2011-08-05 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Set_All_DT_Position): Cleanup code and improve support |
| for renamings of predefined primitives. |
| (In_Predef_Prims_DT): New subprogram. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb, sem_util.ads (Check_Implicit_Dereference): If a |
| possible interpretation of name is a reference type, add an |
| interpretation that is the designated type of the reference |
| discriminant of that type. |
| * sem_res.adb (resolve): If the interpretation imposed by context is an |
| implicit dereference, rewrite the node as the deference of the |
| reference discriminant. |
| * sem_ch3.adb (Analyze_Subtype_Declaration, Build_Derived_Record_Type, |
| Build_Discriminated_Subtype): Inherit Has_Implicit_Dereference from |
| parent type or base type. |
| * sem_ch4.adb (Process_Indexed_Component, |
| Process_Overloaded_Indexed_Component, Indicate_Name_And_Type, |
| Analyze_Overloaded_Selected_Component, Analyze_Selected_Component): |
| Check for implicit dereference. |
| (List_Operand_Interps): Indicate when an implicit dereference is |
| ambiguous. |
| * sem_ch8.adb (Find_Direct_Name): Check for implicit dereference. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * scos.ads: Update documentation of SCO table. Pragma statements can now |
| be marked as disabled (using 'p' instead of 'P' as the statement kind). |
| * par_sco.ads, par_sco.adb: Implement the above change. |
| (Process_Decisions_Defer): Generate a P decision for the first parameter |
| of a dyadic pragma Debug. |
| * sem_prag.adb (Analyze_Pragma, case Debug): Mark pragma as enabled if |
| necessary. |
| * put_scos.adb: Code simplification based on above change. |
| |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, gnatcmd.adb, switch-c.adb, exp_attr.adb, make.adb, |
| bindgen.adb, einfo.adb, sem_ch12.adb, sem_attr.adb, a-fihema.adb, |
| a-fihema.ads, sem_elab.adb, sem_elab.ads, aspects.adb, opt.ads, |
| prj-conf.adb, sem_ch13.adb, s-ficobl.ads: Minor reformatting |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-stunau.ads, g-spipat.adb: Update comments. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-fihema.ads: Minor comment fix. |
| * a-fihema.adb (Allocate, Deallocate): Assert that the alignment is |
| correct. |
| (Attach, Detach): Remove some unnecessary code. |
| (Finalize): Remove Node_Ptr_To_Address, replace with a constant. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-fihema.ads, a-fihema.adb (Finalization_Collection): Avoid heap |
| allocation for Objects component. This simplifies the code somewhat. It |
| is also a little more efficient in the not-so-unusual case where there |
| are no controlled objects allocated. |
| Make Finalization_Started flag atomic. |
| (Finalize): Avoid unnecessary detachment of items from the list. |
| (pcol): Minor cleanup. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Formal_Package_Declaration): reject a formal |
| package whose name is the same as that of the generic unit, or its |
| ultimate prefix. |
| |
| 2011-08-05 Bob Duff <duff@adacore.com> |
| |
| * a-fihema.adb, a-fihema.ads: Minor comment improvements. |
| * sem_ch3.adb, exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, exp_util.adb: |
| Minor comment fixes. |
| |
| 2011-08-05 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb (Linking_Phase): No longer need to set source search path |
| before calling gnatlink in CodePeer mode. |
| * gnatlink.adb (Gnatlink): No longer pass -gnat83/95/05/12 switch to |
| gcc in CodePeer mode, since the binder generated file no longer has a |
| 'with Main'. |
| * switch.ads, switch.adb (Is_Language_Switch): Removed. |
| * switch-c.adb: Update comment. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_strm.adb, bindgen.adb, s-ficobl.ads: Minor reformatting. |
| |
| 2011-08-05 Nicolas Roche <roche@adacore.com> |
| |
| * gnat_ugn.texi: Fix minor syntax error issue. |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * gnatcmd.adb (Get_Closure): Do not crash when it is not possible to |
| delete or close the file when the call to gnatmake returns a non |
| successful return code. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Type_Conversion): When expanding a predicate |
| check, indicate that the copy of the original node does not come from |
| source, to prevent an infinite recursion of the expansion. |
| |
| 2011-08-05 Johannes Kanig <kanig@adacore.com> |
| |
| * debug.adb: document switch -gnatd.G for gnat2why, which deactivates |
| VC generation for subprogram bodies. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * einfo.ads: Typo. |
| * sem_ch3.adb (Signed_Integer_Type_Declaration): in ALFA mode, define |
| the base type with the smallest allowed base type. |
| |
| 2011-08-05 Sergey Rybin <rybin@adacore.com> |
| |
| * tree_gen.adb, tree_in.adb, aspects.adb: Fix tree read-write for |
| aspects. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.ads: minor comment updates. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Formal_Package_Declaration): in an |
| instantiation and a formal package the compiler generates a package |
| renaming declaration so that the generic name within the declaration |
| is interpreted as a renaming of the instance. At the end of a formal |
| package declaration, this renaming must become invisible. |
| |
| 2011-08-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Is_Init_Call): Reimplemented to avoid character |
| comparison and rely on concrete entities instead. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * einfo.ads, einfo.adb (Has_Implicit_Dereference): new flag on types |
| and discriminants, to indicate that the type has an access discriminant |
| that supports implicit dereference. |
| * snames.ads-tmpl: Add names of aspects and attributes related to |
| Ada2012 iterators: constant_indexing, default_iterator, |
| iterator_element, implicit_dereference, variable_indexing. |
| * aspects.ads, aspects.adb: entries for iterator-related aspects. |
| * sem_ch13.adb (Analyze_aspect_specifications): dummy entries for |
| iterator-related aspects. |
| * sem_attr.adb, exp_attr.adb Dummy entries for iterator-related aspects. |
| |
| 2011-08-05 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_ugn.texi, vms_data.ads: Extend the subsection about coupling |
| metrics in gnatmetric to cover new kinds of coupling mentrics. |
| |
| 2011-08-05 Steve Baird <baird@adacore.com> |
| |
| * bindgen.adb (Gen_CodePeer_Wrapper): Call Ada_Main_Program instead |
| of calling the user-defined main subprogram. |
| (Gen_Main): Declare Ada_Main_Program and (if CodePeer_Mode |
| is set) Call_Main_Subprogram ahead of, as opposed to |
| inside of, Main. |
| (Gen_Output_File_Ada): Remove CodePeer_Mode-conditional |
| generation of a "with" of the user-defined main subprogram. |
| Remove CodePeer_Mode-conditional call to Gen_CodePeer_Wrapper |
| (which is now called from Gen_Main instead). |
| |
| 2011-08-05 Emmanuel Briot <briot@adacore.com> |
| |
| * projects.texi: Added reference to the Makefile package. |
| |
| 2011-08-05 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch7.adb: Minor comment rewording. |
| |
| 2011-08-05 Ed Falis <falis@adacore.com> |
| |
| * env.c: Fix comment. |
| |
| 2011-08-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_elab.adb (Is_Finalization_Procedure): Reimplemented to avoid |
| character comparison and rely on concrete entities instead. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb: (Check_Private_Overriding): better error message, |
| suggested by AI95-0068. |
| |
| 2011-08-05 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Find_Last_Init): Use Next_Suitable_Statement to retrieve |
| the two potential initialization calls. This accounts for any |
| access-before-elaboration checks which may precede the initialization |
| calls. |
| (Next_Suitable_Statement): New routine. Returns the next real statement |
| after the input node while skipping generated checks. |
| * sem_elab.adb (Check_A_Call): New formal parameter In_Init_Proc along |
| with comment on usage. |
| Do not generate Elaborate_All when the trigger is a finalization call |
| coming from a type init proc. |
| (Check_Elab_Call): Propagate the initialization procedure context to |
| subsequent calls to Check_A_Call. |
| (Check_Internal_Call_Continue): Propagate the initialization procedure |
| context to subsequent calls to Check_Elab_Call. |
| (Is_Finalization_Procedure): New routine. Returns True if the input |
| entity denotes a [Deep_]Finalize routine. |
| * sem_elab.ads (Check_Elab_Call): New formal parameter In_Init_Proc |
| along with comment on usage. |
| |
| 2011-08-05 Vadim Godunko <godunko@adacore.com> |
| |
| * s-atocou.ads: Add list of supported platforms. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb, restrict.adb: Correct style for or'ing Boolean variables |
| |
| * opt.ads (Disable_ALI_File): new Boolean flag |
| * lib-writ.adb (Write_ALI): when Disable_ALI_File is set, do nothing |
| |
| 2011-08-05 Ed Falis <falis@adacore.com> |
| |
| * env.c (__gnat_environ): Fix includes for RTPs and VTHREADS so that |
| environ is properly defined. |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Compilation_Phase): Exit immediately when all objects have |
| been found up to date, to avoid multiple exit messages. |
| * prj-nmsc.adb (Add_Source): Allow duplicate source file names in the |
| same project for languages with no compiler. |
| * gnat_ugn.texi: Document compiler switch -gnateI and gnatmake switch |
| -eI. |
| 2011-08-05 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.ads, sem_type.adb, make.adb, sem_prag.adb, sem_util.adb, |
| sem_util.ads, sem_attr.adb, restrict.ads, sem_ch6.adb, prj-conf.adb, |
| prj-conf.ads, s-atocou.ads, s-atocou.adb, s-atocou-x86.adb, |
| s-atocou-builtin.adb: Minor reformatting. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch7.adb (Establish_Transient_Scope): in formal verification mode, |
| if the node to wrap is a pragma check, this node and enclosed |
| expression are not expanded, so do not apply any transformations here. |
| * exp_prag.adb (Expand_Pragma_Check): document the need to avoid |
| introducing transient scopes. |
| |
| 2011-08-05 Jose Ruiz <ruiz@adacore.com> |
| |
| * adaint.c (__gnat_set_writable, __gnat_set_readable, |
| __gnat_set_executable, __gnat_set_non_writable, __gnat_set_non_readable, |
| __gnat_copy_attribs): On VxWorks 6.x and later, the required chmod |
| routine is available, so we use the default implementation of these |
| functions. |
| * s-os_lib.ads (Copy_File, Copy_Time_Stamps): Document that there is |
| support for copying attributes on VxWorks 6. |
| |
| 2011-08-05 Yannick Moy <moy@adacore.com> |
| |
| * debug.adb: Remove use of -gnatd.D. |
| * gnat1drv.adb (Adjust_Global_Switches): adjust switches for ALFA mode |
| * opt.ads: Simplify variables for ALFA mode, to keep one only |
| * restrict.adb, sem_prag.adb: Adapt treatment done for CodePeer mode |
| to ALFA mode. |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Do_Autoconf): Look also for --RTS in |
| Builder'Default_Switches. |
| |
| 2011-08-05 Vincent Celier <celier@adacore.com> |
| |
| * makeusg.adb: Add lines for --create-map-file switches. |
| |
| 2011-08-05 Ed Schonberg <schonberg@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): For a subprogram, if a type in the |
| profile is incomplete and the full view is available, replace it with |
| the full view. |
| * sem_ch6.adb (Possible_Freeze): if a type in the profile is |
| incomplete, freezing the subprogram is delayed until the full view is |
| frozen. |
| * sem_type.adb (Disambiguate): an ambiguity between a user-defined |
| fixed-point multiplication operator and the predefined operator is |
| resolved in favor of the user-defined one. |
| |
| 2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * init.c [__alpha__ && __osf__] (__gnat_error_handler): Use |
| CONST_CAST. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.ads, sem_unit.adb (Type_Without_Stream_Operation): determine |
| whether a type lacks user-defined Read or Write operations, or has a |
| component that lacks them. |
| * sem_attr.adb (Check_Stream_Attribute): if restriction |
| No_Default_Stream_Attributes is active, verify that all subcomponent |
| types of the target have user-defined stream operations, and report |
| error otherwise. |
| * exp_ch3.adb (Stream_Operqtion_OK): use Type_Without_Stream_Operation. |
| * exp_strm.adb: Build_Elementary_Input_Call, |
| Build_Elementary_Write_Call): remove checks for restriction |
| No_Default_Stream_Attributes, now checked in semantics. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.ads, prj-conf.adb (Do_Autoconf): If there is no --RTS |
| switches on the command line, look for all valid --RTS switches in the |
| Builder switches and for each language use the first runtime name found |
| to invoke gprconfig. |
| (Get_Or_Create_Configuration_File): Warn if --RTS is specified on the |
| command line and there is no auto-configuration. |
| (Runtime_Name_Set_For): New function. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Object_Declarations): Do not generate the |
| elaborate initialization expression for variable Abort when processing |
| a package body or a declaration. |
| (Create_Finalizer): Propagate the package context when creating the |
| exception-related variables. |
| * exp_ch7.ads (Build_Object_Declarations): New formal parameter |
| For_Package along with usage comment. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Makefile.in: Clean up targets. |
| Enable new package for atomic counters and copy-on-write implementation |
| of unbounded strings on x86 platforms. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.adb: Minor reformatting. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_strm.adb: Minor reformatting. |
| |
| 2011-08-04 Vadim Godunko <godunko@adacore.com> |
| |
| * s-atocou.adb: Replace by dummy version and use on targets where atomic |
| operations are not supported. |
| * s-atocou-builtin.adb: Renamed from s-atocou.adb. |
| * s-atocou-x86.adb: New file. |
| * Makefile.rtl: Add s-atocou.o file |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb (Compile): Move setting of CodePeer_Mode to ... |
| (Compilation_Phase): ... here. |
| (Scan_Make_Arg): Now bind and link by default in CodePeer mode. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * Make-generated.in: Fix minor typo in comment. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * gnatls.adb: Use Prj.Env.Initialize_Default_Project_Path to retrieve |
| the project path. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * a-coinho.adb: Minor reformatting. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * a-coinho.ads: Minor reformatting. |
| |
| 2011-08-04 Vadim Godunko <godunko@adacore.com> |
| |
| * s-atocou.ads, s-atocou.adb: New files. |
| * a-strunb-shared.ads, a-strunb-shared.adb, a-stwiun-shared.ads, |
| a-stwiun-shared.adb, a-stzunb-shared.ads, a-stzunb-shared.adb: Remove |
| direct use of GCC's atomic builtins and replace them by use of new |
| atomic counter package. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_strm.adb: better error message for No_Default_Stream_Attributes. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-tags.adb (Unregister_Tag): Replace the complex address arithmetic |
| with a call to Get_External_Tag. |
| * exp_ch7.adb (Build_Cleanup_Statements): Update the comment on |
| subprogram usage. Remove the guard against package declarations and |
| bodies since Build_Cleanup_Statements is no longer invoked in that |
| context. |
| (Build_Components): Initialize Tagged_Type_Stmts when the context |
| contains at least one library-level tagged type. |
| (Build_Finalizer): New local variables Has_Tagged_Types and |
| Tagged_Type_Stmts along with associated comments on usage. Update the |
| logic to include tagged type processing. |
| (Create_Finalizer): Insert all library-level tagged type unregistration |
| code before the jump block circuitry. |
| (Expand_N_Package_Body): Remove the call to Build_Cleanup_Statements. |
| (Expand_N_Package_Declaration): Remove the call to |
| Build_Cleanup_Statements. |
| (Process_Tagged_Type_Declaration): New routine. Generate a call to |
| unregister the external tag of a tagged type. |
| (Processing_Actions): Reimplemented to handle tagged types. |
| (Process_Declarations): Detect the declaration of a library-level |
| tagged type and carry out the appropriate actions. |
| (Unregister_Tagged_Types): Removed. The machinery has been directly |
| merged with Build_Finalizer. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * bindgen.ads, gnatlink.adb, sem_ch4.adb, gnatbind.adb, put_alfa.adb, |
| gnatls.adb, exp_ch3.adb: Minor reformatting. |
| |
| 2011-08-04 Marc Sango <sango@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute): Replace the message |
| "invisible attribute of}" of the spark restriction violation in |
| attribute reference by the simple message "invisible attribute of type". |
| Indeed, the node value Error_Msg_Node_1 used is in conflit with the |
| two insertion characters: '&' and '}'. |
| |
| 2011-08-04 Vadim Godunko <godunko@adacore.com> |
| |
| * impunit.adb (Non_Imp_File_Names_12): Add "a-coinho". |
| * a-coinho.ads, a-coinho.adb: New file. |
| * Makefile.rtl: Add Ada.Containers.Indefinite_Holders. |
| |
| 2011-08-04 Nicolas Roche <roche@adacore.com> |
| |
| * alfa_test.adb: Not all ali files are containing alfa information even |
| if compiled with -gnatd.F. So suppress warning about missing ALFA |
| information. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Add_ALFA_Scope): use non-empty unique name for |
| scope. |
| * put_alfa.adb: Check that scope name is not empty. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch3.adb (Stream_Operation_Ok): new predicate |
| Needs_Elementary_Stream_Operation, to determine whether user-defined |
| Read and Write attributes are available for the elementary components |
| of the given type. If only the predefined attributes are available, |
| then when restriction No_Default_Stream_Attributes is active the |
| predefined stream attributes for the composite type cannot be created. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * bindgen.adb: Fix obsolete comments and names from Ada/C days. |
| Put routines in alpha order |
| |
| 2011-08-04 Jose Ruiz <ruiz@adacore.com> |
| |
| * gcc-interface/Makefile.in: Remove xenomai specific versions of system. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/lang.opt: Add AdaWhy language, simimlar to Ada. |
| * gcc-interface/lang-specs.h: Add handling of AdaWhy specs (calls |
| gnat1why). |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, make.adb, a-cohata.ads, sem_prag.adb, makeutl.adb, |
| lib-xref-alfa.adb: Minor reformatting. |
| |
| 2011-08-04 Marc Sango <sango@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Generic_Package_Declaration, |
| Analyze_Generic_Subprogram_Declaration, Analyze_Package_Instantiation, |
| Analyze_Subprogram_Instantiation): Check absence of generic in SPARK |
| mode. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * bindgen.adb (Gen_Adainit_C): Remove. |
| (Gen_Adafinal_C): Ditto. |
| (Gen_Elab_Externals_C): Ditto. |
| (Gen_Elab_Calls_C): Ditto. |
| (Gen_Elab_Order_C): Ditto. |
| (Gen_Elab_Defs_C): Ditto. |
| (Gen_Finalize_Library_C): Ditto. |
| (Gen_Finalize_Library_Defs_C): Ditto. |
| (Gen_Main_C): Ditto. |
| (Gen_Output_File_C): Ditto. |
| (Gen_Restrictions_C): Ditto. |
| (Gen_Versions_C): Ditto. |
| (Write_Info_Ada_C): Ditto. |
| (Gen_Object_Files_Options): Call WBI instead of Write_Info_Ada_C |
| (Gen_Output_File): Do not force Ada_Bind_File anymore. |
| Always call Gen_Output_File_Ada. |
| * gnatlink.adb (Begin_Info): Now a constant. |
| (End_Info): Ditto. |
| (Ada_Bind_File): Remove |
| (Process_Args): Do not handle -A/-C. Remove not Ada_Bind_File cases. |
| * switch-b.adb (Scan_Binder_Switches): Do not handle -C. |
| * gnatbind.adb (Gnatbind): Remove not Ada_Bind_File cases. |
| * opt.ads (Ada_Bind_File): Remove. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * projects.texi: Document target-specific directory in default project |
| path for gnatmake. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * gnatls.adb, prj-env.adb: Add $prefix/share/gpr to default project |
| path in all cases . |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb, sem_ch5.adb, sem_util.adb, sem_ch4.adb, sem_ch8.adb, |
| opt.ads, lib-xref.ads: Code clean up. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi: Update description of Test_Case |
| * gnat_ugn.texi: Typo. |
| |
| 2011-08-04 Ed Falis <falis@adacore.com> |
| |
| * adaint.c (__gnat_get_number_of_cpus): fix typo in last checkin. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Suitable_Element): Skip field _parent on .NET/JVM when |
| it is of type Root_Controlled. This action eliminates fields Prev and |
| Next from type equality. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb: Correct typo. |
| |
| 2011-08-04 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cohata.ads (Hash_Table_Type): default-initialize the Nodes |
| component. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb (Check_Arg_Is_String_Literal): remove useless procedure |
| (Analyze_Pragma): allow static string expression for name of Test_Case, |
| instead of simply string literals. |
| * sem_util.adb (Get_Name_From_Test_Case_Pragma): adapt to static string |
| expressions. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Complete_Mains.Find_File_Add_Extension): Use canonical |
| case suffixes to find truncated main sources. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * impunit.adb (Non_Imp_File_Names_95): Add g-tastus. |
| s-stusta.adb (Compute_All_Task): Use Put_Line instead of Put. |
| (Compute_Current_Task): Ditto. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * gnat_ugn.texi: Mention GNAT.Task_Stack_Usage. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Is_Global_Constant): new function that detects |
| library-level constant. |
| (Add_ALFA_Xrefs): ignore global constants in ALFA xref. |
| * sem_res.adb (Resolve_Actuals): do not add cross-reference to Formal |
| used as selector of parameter association, in ALFA mode. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, exp_ch7.adb, exp_util.adb, bindgen.adb, sem_prag.adb, |
| s-tassta.adb, exp_ch4.adb, exp_disp.adb, s-stausa.adb: Minor |
| reformatting. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb (Linking_Phase): Set source search path before calling |
| gnatlink in CodePeer mode. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch7.adb (Expand_N_Package_Body, Expand_N_Package_Declaration): |
| Remove code which takes care of building TSDs. |
| * rtsfind.ads (RE_Check_Interface_Conversion): New entity. |
| * exp_ch4.adb (Apply_Accessibility_Check): Add support for generating |
| the accessibility check in VM targets. |
| * exp_disp.adb (Make_VM_TSD): Spec moved to exp_disp.ads |
| (Building_Static_DT): Now returns false for VM targets. |
| (Build_VM_TSDs): Removed. |
| (Expand_Interface_Conversion): Generate missing runtime check for |
| conversions to interface types whose target type is unknown at compile |
| time. |
| (Make_VM_TSD): Add missing code to disable the generation of calls to |
| Check_TSD if the tagged type is not defined at library level, or not |
| has a representation clause specifying its external tag, or -gnatdQ is |
| active. |
| * exp_disp.ads (Build_VM_TSDs): Removed. |
| (Make_VM_TSDs): Spec relocated from exp_disp.adb |
| * sem_disp.adb (Check_Dispatching_Operation): No code required to |
| register primitives in the dispatch tables in VM targets. |
| * exp_ch3.adb (Expand_N_Object_Declaration): Remove wrong expansion of |
| initialization of class-wide interface objects in VM targets. |
| (Expand_Freeze_Record_Type): For VM targets call Make_VM_TSD (instead |
| of Make_DT). |
| |
| 2011-08-04 Jerome Lambourg <lambourg@adacore.com> |
| |
| * gnatlink.adb (Gnatlink): Correct missleading error message displayed |
| when dotnet-ld cannot be found. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * bindgen.adb: Simplify significantly generation of binder body file in |
| CodePeer mode. |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Prevent assert failure |
| when compiling binder generated file in CodePeer mode (xxx'Elab_Spec |
| not expanded). |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb, sem.ads: Code cleanup. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * s-tassta.adb (Task_Wrapper): Rewrite the dynamic stack usage part. |
| * s-stausa.adb, s-stausa.ads: Major rewrite. Now provides accurate |
| results if possible. |
| * s-stusta.adb (Print): Adjust after changes in s-stausa. |
| * gnat_ugn.texi: Update dynamic stack usage section. |
| |
| 2011-08-04 Steve Baird <baird@adacore.com> |
| |
| * bindgen.adb (Gen_CodePeer_Wrapper): new procedure. |
| Generate (if CodePeer_Mode is set) a "wrapper" subprogram which |
| contains only a call to the user-defined main subprogram. |
| (Gen_Main_Ada) - If CodePeer_Mode is set, then |
| call the "wrapper" subprogram instead of directly |
| calling the user-defined main subprogram. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Case_Statement): Check the statements of all |
| alternatives of a case statement for controlled objects. Rename local |
| variable A to Dead_Alt. |
| (Expand_N_If_Statement): Check the then and else statements of an if |
| statement for controlled objects. Check the then statements of all |
| elsif parts of an if statement for controlled objects. |
| (Expand_N_Loop_Statement): Check the statements of a loop for controlled |
| objects. |
| * exp_ch7.adb (Process_Transient_Objects): Rewrite the condition which |
| detects a loop associated with the expansion of an array object. |
| Augment the processing of the loop statements to account for a possible |
| wrap done by Process_Statements_For_Controlled_Objects. |
| * exp_ch9.adb (Expand_N_Asynchronous_Select): Check the triggering |
| statements and abortable part of an asynchronous select for controlled |
| objects. |
| (Expand_N_Conditional_Entry_Call): Check the else statements of a |
| conditional entry call for controlled objects. |
| (Expand_N_Selective_Accept): Check the alternatives of a selective |
| accept for controlled objects. |
| (Expand_N_Timed_Entry_Call): Check the entry call and delay |
| alternatives of a timed entry call for controlled objects. |
| * exp_ch11.adb (Expand_Exception_Handlers): Check the statements of an |
| exception handler for controlled objects. |
| * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)): |
| Add formal parameter Nested_Constructs along with its associated |
| comment. |
| (Requires_Cleanup_Actions (Node_Id)): Update all calls to |
| Requires_Cleanup_Actions. |
| (Process_Statements_For_Controlled_Objects): New routine. |
| * exp_util.ads (Process_Statements_For_Controlled_Objects): New |
| routine. Inspect a node which contains a non-handled sequence of |
| statements for controlled objects. If such an object is found, the |
| statements are wrapped in a block. |
| |
| 2011-08-04 Bob Duff <duff@adacore.com> |
| |
| * sem_type.adb (Covers): If T2 is a subtype of a class-wide type, we |
| need to compare with Class_Wide_Type (T2), in order to get at the |
| original class-wide type node. |
| * sem_type.ads (Covers): Improve the comment. |
| * einfo.ads (Class_Wide_Type): Improve the comment. |
| * exp_intr.adb (Expand_Unc_Deallocation): Remove unnecessary setting of |
| the type of the Deref. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi: Document that Test_Case pragma can only appear on |
| separate declarations. |
| * sem_prag.adb (procedure Check_Identifier_Is_One_Of): new procedure to |
| check identifier of pragma argument. |
| (Chain_TC): check that no other test case associated to the same entity |
| share the same name. |
| (Check_Test_Case): disallow test case inside subprogram body |
| (Analyze_Pragma): correct call to check identifier and not argument |
| * sem_util.adb, sem_util.ads (Get_Name_From_Test_Case_Pragma): new |
| function gets name from test case pragma. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi: Document new pragma and aspect. |
| * aspects.adb, aspects.ads (Aspect_Id): new value Aspect_Test_Case |
| (No_Duplicates_Allowed): new constant array defining whether duplicates |
| aspects of each kind can appear on the same declaration. |
| * einfo.adb, einfo.ads (Spec_PPC_List): replace field with Contract |
| field, which points to a node holding the previous Spec_PPC_List. |
| * exp_ch9.adb, sem_ch6.adb, sem_prag.adb: Reach to Spec_PPC_List |
| through the indirection with Contract. |
| * exp_util.adb (Insert_Actions): raise Program_Error on N_Contract node |
| * par-prag.adb (Prag): do nothing on Test_Case pragma |
| * sem.adb (Analyze): abort on N_Contract, on which Analyze should not |
| be called directly. |
| * sem_attr.adb (Analyze_Attribute): allow attribute 'Result in |
| component Ensures of Test_Case. |
| * sem_ch12.adb, sem_ch6.adb, sem_ch9.adb |
| (Analyze_Generic_Subprogram_Declaration, |
| Analyze_Subprogram_Instantiation, |
| Analyze_Abstract_Subprogram_Declaration, |
| Analyze_Subprogram_Body_Helper, |
| Analyze_Subprogram_Specification, Analyze_Entry_Declaration): |
| insert contract in subprogram node at point of definition |
| * sem_ch13.adb |
| (Aspect_Loop): do not raise error on duplicate Test_Case aspect |
| (Analyze_Aspect_Specifications): analyze Test_Case aspect and create |
| corresponding pragma |
| (Check_Aspect_At_Freeze_Point): raise Program_Error on Test_Case aspect |
| * sem_ch3.adb (Analyze_Declarations): insert analysis of test-cases, |
| similar to the analysis of pre/post |
| (Derive_Subprogram): insert contract in subprogram node at point of |
| derivation. |
| * sem_prag.adb, sem_prag.ads |
| (Check_Arg_Is_String_Literal, Check_Identifier): |
| new checking procedures to be called in treatment of pragmas |
| (Check_Test_Case): new procedure to check that a Test_Case aspect or |
| pragma is well-formed. This does not check currently that 'Result is |
| used only in the Ensures component of a Test_Case. |
| (Analyze_Pragma): add case for Test_Case |
| (Analyze_TC_In_Decl_Part): pre-analyze the Requires and Ensures |
| components of a Test_Case. |
| (Preanalyze_TC_Args): new procedure to preanalyze the boolean |
| expressions in the 3rd (and 4th if present) arguments of a Test_Case |
| pragma, treated as spec expressions. |
| (Sig_Flags): add value -1 for Test_Case. |
| * sem_util.adb, sem_util.ads (Get_Ensures_From_Test_Case_Pragma, |
| Get_Requires_From_Test_Case_Pragma): getters for both expression |
| components of a Test_Case. |
| * sinfo.adb, sinfo.ads (N_Contract): new kind of node used as |
| indirection between an entry or [generic] subprogram entity and its |
| pre/post + test-cases. |
| (Spec_PPC_List, Spec_TC_List, Set_Spec_PPC_List, Set_Spec_TC_List): |
| get/set for fields of an N_Contract node. |
| * snames.ads-tmpl (Name_Test_Case, Name_Ensures, Name_Mode, |
| Name_Normal, Name_Requires, Name_Robustness, Pragma_Test_Case): new |
| names and pragma for Test_Case. |
| * sprint.adb (Sprint_Node): raise Program_Error on N_Contract node |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * gnat_ugn.texi: Improve documentation of gnatmake switch |
| --source-info-file=. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Make_Final_Call): Add local variable Atyp (assertion |
| type). Initialize Atyp to the appropriate type which is later checked |
| for completion. Rewrite the assertion associated with private type |
| completion. |
| |
| 2011-08-04 Ed Falis <falis@adacore.com> |
| |
| * adaint.c: Add call to vxCpuConfiguredGet for VxWorks SMP to |
| initialize the number of CPUs. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_type.adb (Disambiguate): New subsidiary routine |
| In_Same_Declaration_List, to implement AI05-0020: a user-defined |
| equality on an anonymous access type whose designated type is private |
| does not lead to an ambiguity with the universal access equality |
| operator in the body or child units of the defining package. The same |
| is true for a multiplication operator on a private type completed with |
| a fixed-point-type. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * opt.ads (Init_Or_Norm_Scalars_Config): Removed. |
| (Normalize_Scalars_Config): Removed. |
| * opt.adb |
| (Register_Opt_Config_Switches): Remove registering config values of |
| Init_Or_Norm_Scalars_Config and Normalize_Scalars_Config. |
| (Restore_Opt_Config_Switches): Remove code which restores the values of |
| Init_Or_Norm_Scalars and Normalize_Scalars. Recalculate value of |
| Init_Or_Norm_Scalars. |
| (Save_Opt_Config_Switches): Remove code which saves values of |
| Init_Or_Norm_Scalars and Normalize_Scalars. |
| (Set_Opt_Config_Switches): Remove code which restores config values of |
| Init_Or_Norm_Scalars and Normalize_Scalars. Recalculate value of |
| Init_Or_Norm_Scalars. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * frontend.adb (Frontend): remove previous patch to avoid full |
| qualification in ALFA mode. |
| * lib-xref-alfa.adb (Add_ALFA_Xrefs): use unique name for variables. |
| * sem_util.adb, sem_util.ads (Unique_Name): new function to define a |
| unique name for an entity, which could be used to identify the entity |
| across compilation units. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * prj-env.adb |
| (Initialize_Default_Project_Path): Add target specific directory |
| ($prefix/$target/lib/gnat) in front of project path in all cases |
| (making gnatmake's behaviour consistent with gprbuild). |
| * gnatcmd.adb, make.adb, prj-makr.adb, clean.adb: |
| Pass target name from Sdefault to project subsystem. |
| * gnatls.adb: Show new target specific default project directory. |
| |
| 2011-08-04 Johannes Kanig <kanig@adacore.com> |
| |
| * cstand.adb: Add Information to Identifier in Standard |
| (Identifer_For): Set Entity to the corresponding entity |
| |
| 2011-08-04 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_ugn.texi: Update doc on gnatcheck. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Add_ALFA_Xrefs): correct definition of ranges of |
| xrefs in a scope. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * exp_prag.adb (Expand_Pragma_Check): in ALFA mode, return without |
| performing expansion. |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper, |
| Analyze_Generic_Subprogram_Body): protect call to Process_PCCs so that |
| it is not called in ALFA mode. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, osint.adb, osint.ads (Reset_Command_Line_Files): not used |
| after all, so removed. |
| |
| 2011-08-04 Sergey Rybin <rybin@adacore.com> |
| |
| * vms_data.ads: Add missing VMS qualifiers. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, osint.adb, osint.ads (Check_Mains): rebuild |
| the list of files on the command line after processing it through |
| Complete_Mains. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Raise_Statement): Remove the specialized |
| processing for .NET/JVM. These targets can now benefit from |
| Raise_From_Controlled_Operation and they share the same processing with |
| standard targets. |
| (Establish_Transient_Scope): Remove the restriction for .NET/JVM. |
| These targets need transient scopes in order to properly finalize short |
| lived controlled objects. |
| (Make_Handler_For_Ctrl_Operation): Remove the specialized processing for |
| NET/JVM. These targets can now benefit from |
| Raise_From_Controlled_Operation and they share the same processing with |
| standard targets. |
| |
| 2011-08-04 Geert Bosch <bosch@adacore.com> |
| |
| * tracebak.c (STOP_FRAME): Stop at any next pointer outside the stack |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_aggr.adb (Has_Visible_Private_Ancestor): subsidiary routine to |
| Expand_Record_Aggregate, to determine whether aggregate must be |
| expanded into assignments. This is the case if the ancestor part is |
| private, regarless of the setting of the flag Has_Private_Ancestor. |
| |
| 2011-08-04 Ed Falis <falis@adacore.com> |
| |
| * vxaddr2line.adb: Add support for e500v2 and for Linux hosts |
| |
| 2011-08-04 Bob Duff <duff@adacore.com> |
| |
| * sinfo.ads: Fix comment. |
| |
| 2011-08-04 Steve Baird <baird@adacore.com> |
| |
| * bindgen.adb (Get_Ada_Main_Name): If CodePeer_Mode is set, then |
| choose a package name in much the same way as is |
| done for JGNAT when VM_Target /= No_VM, except that |
| a slightly more distinctive prefix string is used. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Complete_Mains): no longer accept unit names on the |
| gnatmake command line. |
| This behavior was never documented (and was supported only because of |
| an early bug in the code). This case might lead to ambiguous cases |
| (between unit names and truncated base names without suffixes). |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-tags.ads, a-tags.adb (Unregister_Tag): New routine. |
| Remove the external tag of a tagged type from the internal hash table. |
| * exp_ch7.adb (Build_Cleanup_Statements): Update the comment on the |
| expanded usage of the routine. Strenghten the check for Is_Master. Add |
| processing for tagged types. |
| (Build_Finalizer): Create all the necessary lists used in finalizer |
| creation when the processed context is a package that may contain |
| tagged types. |
| (Expand_Cleanup_Actions): Rename the call to Has_Controlled_Objects to |
| Requires_Cleanup_Actions. |
| (Expand_N_Package_Body): Package bodies may need clean up code |
| depending on whether they contain tagged types. |
| (Expand_N_Package_Declaration): Package declarations may need clean up |
| code depending on whether they contain tagged types. |
| (Unregister_Tagged_Types): New routine. Search through a list of |
| declarations or statements, looking for non-abstract Ada tagged types. |
| For each such type, generate code to unregister the external tag. |
| * exp_util.adb (Has_Controlled_Objects (Node_Id)): Renamed to |
| Requires_Cleanup_Actions. |
| (Requires_Cleanup_Actions (List_Id, Boolean)): New routine. Search |
| through a list of declarations or statements looking for non-abstract |
| Ada tagged types or controlled objects. |
| * exp_util.ads (Has_Controlled_Objects (Node_Id)): Renamed to |
| Requires_Cleanup_Actions. |
| (Has_Controlled_Objects (List_Id, Boolean)): Removed. |
| * rtsfind.ads: Add entry RE_Unregister_Tag to tables RE_Id and |
| RE_Unit_Table. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * prj-env.adb (For_All_Source_Dirs.For_Project): Check if project Prj |
| has Ada sources, not project Project, because if the root project |
| Project has no sources of its own, all projects will be deemed without |
| sources. |
| |
| 2011-08-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * bindgen.adb (Gen_Adainit_Ada): Move the generation of the declaration |
| of the No_Param_Proc acc-to-subp type used for initialization of |
| __gnat_finalize_library_objects so that it's declared at library level |
| rather than nested inside of the adainit routine. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Make_DT): Generate code to check the external tag ONLY |
| if the tagged type has a representation clause which specifies its |
| external tag. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * einfo.ads, einfo.adb (Has_Private_Ancestor): now a flag on types. |
| Remove previous procedure with that name. |
| * sem_ch3.adb (Build_Derived_Record_Type): set Has_Private_Ancestor |
| when appropriate. |
| * sem_aggr.adb (Resolve_Extension_Aggregate): if the ancestor part is a |
| subtype mark, the ancestor cannot have unknown discriminants. |
| (Resolve_Record_Aggregate): if the type has invisible components |
| because of a private ancestor, the aggregate is illegal. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * switch-m.adb (Normalize_Compiler_Switches): Recognize and take into |
| account switches -gnat2005, -gnat12 and -gnat2012. |
| |
| 2011-08-04 Bob Duff <duff@adacore.com> |
| |
| * s-tasdeb.ads: Minor comment fix. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnatlink.adb (Gnatlink): Pass -gnat83/95/05/12 switch to gcc in |
| CodePeer mode. |
| * switch.ads, switch.adb (Is_Language_Switch): New function. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * switch-c.adb: Minor comment addition. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * vms_conv.adb (Process_Argument): Fail graciously when qualifier |
| ending with '=' is followed by a space (missing file name). |
| |
| 2011-08-04 Pascal Obry <obry@adacore.com> |
| |
| * g-regist.ads: Fix size of HKEY on x86_64-windows. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Associations): New routine |
| Check_Overloaded_Formal_Subprogram to reject a formal package when |
| there is a named association or a box initialisation for an overloaded |
| formal subprogram of the corresponding generic. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * alfa.ads (ALFA_Xref_Record): add component for type of entity |
| * get_alfa.adb, put_alfa.adb: Read and write new component of |
| cross-reference. |
| * lib-xref-alfa.adb (Collect_ALFA): generate new component. |
| |
| 2011-08-04 Pascal Obry <obry@adacore.com> |
| |
| * urealp.adb: Minor reformatting. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * exp_ch7.adb (build_finalizer.process_declarations.processing_actions): |
| Handle the case when Cleanup_Protected_Object returns Empty. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * frontend.adb (Frontend): only qualify names in non-ALFA mode |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb (Try_Class_Wide_Operation): if the context is a procedure |
| call, ignore functions. |
| |
| 2011-08-04 Geert Bosch <bosch@adacore.com> |
| |
| * urealp.adb (Equivalent_Decimal_Exponent): Avoid the use of floating |
| point. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Compute_Builder_Switches): no longer accept a unit name |
| as an index for Builder'Switches. This conforms to the documentation. |
| * make.adb (Insert_Project_Sources): avoid duplicate code |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Complete_Mains): if the user has passed a relative file |
| name on the command line (for instance "../dummy"), never assume it can |
| be a unit name. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * bindgen.adb: Remove code the reference or create the |
| Break_Start/__gnat_break_start procedure. |
| * s-stalib.adb (Break_Start): Removed. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, makeutl.ads (Compute_Builder_Switches): now |
| shared with gprbuild. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * par-ch4.adb (P_Primary): preferentially issue an error message about |
| a missing parenthesis arount a conditional or case expression in Ada |
| 2012 mode, if we detect that the alignment is not correct for a |
| statement. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Process_Declarations): Do not consider the result of a |
| tag-to-class-wide conversion as needing finalization actions. |
| * exp_util.adb (Has_Controlled_Objects): Do not consider the result of |
| a tag-to-class-wide conversion as needing finalization actions. |
| (Is_Finalizable_Transient): The result of a tag-to-class-wide |
| conversion does not need finalization actions. |
| (Is_Tag_To_CW_Conversion): New routine. |
| * exp_util.ads (Is_Tag_To_CW_Conversion): New routine. Determines |
| whether an object is the result of a tag-to-class-wide conversion. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): correct order in which |
| the left-hand-side and right-hand-side of a conjunct are inserted when |
| translating a pre- or postcondition |
| * sem_ch6.adb: Correct typo in comment |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * gnat_rm.texi: Ravenscar does not prohibit dependence on |
| Unchecked_Conversion and Unchecked_Deallocation. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * make.adb: Minor reformatting. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj.adb, prj.ads, makeutl.adb (Complete_Mains): search for the |
| sources in the project and its imported projects, but not in the whole |
| tree. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb: Remove debug trace. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Do_Complete): Get the absolute path name of a relative |
| path in canonical form, to be able to compare path names on platforms |
| such as Windows or Darwin. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb (Traverse_Declarations_Or_Statements.Set_Statement_Entry): |
| For a pragma (statement with C1 = 'P'), record the sloc of the pragma. |
| * scos.ads: Update documentation accordingly. |
| * put_scos.adb (Output_SCO_Line): Omit statement SCOs for disabled |
| pragmas. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb (Bad_Attribute_For_Predicate): flag illegal use of |
| attribute only if prefix type is scalar. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, prj-env.adb (Check_Mains): put back support |
| in gnatmake for specifying mains on the command line that do not belong |
| to the main project. These mains must currently all belong to the same |
| project, though. |
| (Ultimate_Extension_Of): removed, since duplicated |
| Ultimate_Extending_Project. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb (Do_Codepeer_Globalize_Step): Removed. Use CodePeer_Mode |
| instead. |
| (CodePeer_Mode_String): New. |
| (Linking_Phase, Binding_Phase): Call gnatlink with -P switch in |
| CodePeer mode. |
| (Scan_Make_Arg): Do not disable binding/linking phase in CodePeer mode. |
| * bindgen.adb (Gen_Elab_Calls_Ada): Ignore subprograms in CodePeer |
| mode, since no useful elaboration subprogram is needed by CodePeer. |
| * gnatlink.adb (Gnatlink): Add support for -P switch (CodePeer mode). |
| In this mode, compile binder file with -gnatC and do stop after this |
| step. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * exp_ch7.adb: Minor comment fix. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.adb, make.adb, sem_ch10.adb, bindgen.adb, sem_res.adb, |
| exp_ch4.adb, makeutl.adb: Minor reformatting. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, makeutl.ads (Make): major refactoring. |
| Create several new subprograms to move code out of Make. This makes the |
| code more readable, removes code duplication, and is a preparation work |
| for adding support for aggregate projects. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * s-po32gl.ads, s-po32gl.adb: New files. |
| * exp_ch7.ads (Get_Global_Pool_For_Access_Type): New function. |
| * exp_ch7.adb (Get_Global_Pool_For_Access_Type): New function. |
| (Build_Finalization_Collection): Use it. |
| * exp_ch4.adb (Complete_Controlled_Allocation): Ditto. |
| * rtsfind.ads: System_Pool_32_Global, Re_Global_Pool_32_Object: New |
| literals. |
| * gcc-interface/Makefile.in: Use s-po32gl.o on VMS. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Complete_Mains): add support for specs with no suffix on |
| the command line. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb (Complete_Mains): if a main specified on the |
| command line is not a file name, also check whether it could be a unit |
| name. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * bindgen.adb (Gen_Finalize_Library_Ada): Factor out code to generate |
| the header of the finalization routine. |
| If the unit has no finalizer but is a body whose spec has one, then |
| generate the decrement of the elaboration entity only. |
| If the unit has a finalizer and is a spec, then do not generate the |
| decrement of the elaboration entity. |
| (Gen_Finalize_Library_C): Likewise. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Alignment_Of): New subsidiary routine. |
| (Bounds_Size_Expression): Removed. |
| (Double_Alignment_Of): New subsidiary routine. |
| (Make_Finalize_Address_Stmts): New local variable Index_Typ. Account |
| for a hole in the dope vector of unconstrained arrays due to different |
| index and element alignments. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Allocator): diagnose task allocator that will |
| raise program_error because body has not been seen yet. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch10.adb (Analyze_With_Clause): Protect against child unit with |
| an unresolved name. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Do_Complete): Check absolute paths in canonical forms |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * alfa.adb, alfa.ads (Unique_Defining_Entity): move function from here |
| * sem_util.adb, sem_util.ads (Unique_Defining_Entity): ...to here |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Package_Instantiation): Do not omit body for |
| instantiation in RCI. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb: Share more code with gprbuild |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * projects.texi: Added documentation for the IDE'Gnat project file |
| attribute. |
| |
| 2011-08-04 Nicolas Roche <roche@adacore.com> |
| |
| * gnat_rm.texi: Minor editing. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * bindgen.adb (Gen_Adafinal_Ada): Do not differentiate the main case |
| and the library case for VM targets. |
| (Gen_Adainit_Ada): Likewise. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * g-altive.ads: Minor comment updates. |
| * prj-nmsc.adb: Minor reformatting. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * opt.ads |
| (Normalize_Scalars_Config): Value of the configuration switch set by |
| pragma Normalize_Scalars when it appears in the gnat.adc file. |
| (Normalize_Scalars): New field for record Config_Switches_Type. Used |
| to save and restore settings of this pragma. |
| * opt.adb |
| (Register_Opt_Config_Switches, Save_Opt_Config_Switches, |
| Restore_Opt_Config_Switches): Add missing support for Normalize_Scalars. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * gnat_ugn.texi: Document gnatlink options -M and -M=mapfile |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * makeutl.adb: Minor reformatting. |
| |
| 2011-08-04 Olivier Hainque <hainque@adacore.com> |
| |
| * g-altive.ads: Update comments to reflect that only the soft |
| binding is available today. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * bindgen.adb, einfo.adb, sem_ch12.adb, s-tasren.adb, sem_res.adb, |
| makeutl.adb, prj-nmsc.adb, opt.ads, prj-env.adb: Minor reformatting |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * prj-env.adb: Remove local debug traces. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * checks.adb (Apply_Float_Conversion_Check): correct a typo where Lo_OK |
| was used instead of Hi_OK, which could cause a read of an uninitialized |
| value later on. Detected while working on the new warning. |
| * exp_ch9.adb (Expand_N_Entry_Declaration): remove useless assignment |
| to local variable. |
| * sem_ch5.adb (Analyze_Assignment): set the last assignment component |
| in more cases, in order to detect more unreferenced values. |
| * sem_util.adb, sem_util.ads (Get_Enclosing_Object): return enclosing |
| object for expression, if any. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_intr.adb (Expand_Binary_Operator_Call): Look at the RM size of |
| the operand types instead of the Esize. |
| |
| 2011-08-04 Steve Baird <baird@adacore.com> |
| |
| * switch-b.adb (Scan_Binder_Switches): Add -P binder switch, used to |
| enable CodePeer_Mode. |
| * bindusg.adb (Display): Add help message describing -P binder switch. |
| * gnat_ugn.texi: Document -P binder switch. |
| * bindgen.adb (Gen_Main_Ada): If CodePeer_Mode is set, then call the |
| user-defined main program directly. |
| (Gen_Output_File_Ada): If CodePeer_Mode is set, generate a with of the |
| user-defined main program in the context clause of the package body. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * alfa.adb, alfa.ads (Get_Entity_For_Decl): remove function, partial |
| duplicate of Defining_Entity |
| (Get_Unique_Entity_For_Decl): rename function into |
| Unique_Defining_Entity |
| * einfo.adb, einfo.ads (Is_In_ALFA, Body_Is_In_ALFA): remove flags |
| (Formal_Proof_On): remove synthesized flag |
| * cstand.adb, sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, |
| sem_ch5.adb, sem_ch6.adb, sem_ch9.adb, sem_res.adb, sem_util.adb, |
| sem_util.ads, stand.ads: Remove treatment associated to entities in ALFA |
| * sem_prag.adb (Analyze_Pragma): remove special treatment for pragma |
| Annotate (Formal_Proof) |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-env.adb (Create_Config_Pragmas_File): fix handling of multi-unit |
| source files with non-standard naming schemes, in imported projects |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb (Complete_Mains): when a multi-unit source file is |
| specified on the gprbuild command line, we need to compile all units |
| within that file, not just the first one we find |
| Fix error message for mains that are not found. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch6.adb: Update comment. |
| * sem_ch12.adb: Minor reformatting. |
| |
| 2011-08-04 Bob Duff <duff@adacore.com> |
| |
| * s-tasren.adb (Task_Do_Or_Queue): Previous code was reading |
| Acceptor.Terminate_Alternative without locking Acceptor, which causes a |
| race condition whose symptom is to fail to lock Parent. That, in turn, |
| causes Parent.Awake_Count to be accessed without locking Parent, which |
| causes another race condition whose symptom is that Parent.Awake_Count |
| can be off by 1 (either too high or too low). The solution is to lock |
| Parent unconditionally, and then lock Acceptor, before reading |
| Acceptor.Terminate_Alternative. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * debug.adb: Update comment. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * par_sco.adb, exp_util.adb, make.adb, a-tags.adb, sem_prag.adb, |
| sem_util.adb, sem_attr.adb, exp_ch4.adb, g-comlin.adb, g-comlin.ads, |
| exp_ch6.adb: Minor reformatting. |
| |
| 2011-08-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * gnat_ugn.texi: Add sentence about the case of compile-time-detected |
| checks for -gnateE. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * gnat_rm.texi: update Ravenscar desription to reflect Ada2012 RM. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sinfo.ads: Minor reformatting. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb, makeutl.ads, prj-nmsc.adb (Complete_Mains): report error |
| even if there is no location. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb, sem_ch4.adb: move check for restriction |
| No_Task_Hierarchy to resolve_allocator. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sinfo.adb, sinfo.ads, sem_prag.adb, sem_ch12.adb (Pragma_Enabled): |
| This flag of N_Pragma nodes is not used, remove it as well as all of |
| the associated circuitry. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Make_DT): Switch -gnatdQ disables the generation of the |
| runtime check on duplicated externa tags |
| * debug.adb Document switch -gnatdQ. |
| |
| 2011-08-04 Gary Dismukes <dismukes@adacore.com> |
| |
| * a-fihema.ads: Minor typo fix. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch10.adb: Minor comment update. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * einfo.adb: Update the node field usage to reflect the renaming of |
| Return_Flag to Return_ Flag_Or_Transient_Decl. |
| (Return_Flag): Renamed to Return_Flag_Or_Transient_Decl. |
| (Set_Return_Flag): Renamed to Set_Return_Flag_Or_Transient_Decl. |
| (Write_Field15_Name): Change Return_Flag to |
| Return_Flag_Or_Transient_Decl. |
| * einfo.ads: Rename node field Return_Flag to |
| Return_Flag_Or_Transient_Decl. Update the associated comment and all |
| occurrences in entities. |
| (Return_Flag): Renamed to Return_Flag_Or_Transient_Decl. Update |
| associated Inline pragma. |
| (Set_Return_Flag): Renamed to Set_Return_Flag_Or_Transient_Decl. Update |
| associated Inline pragma. |
| * exp_ch4.ads, exp_ch4.adb (Expand_N_Expression_With_Actions): New |
| routine. |
| * exp_ch6.adb (Expand_N_Extended_Return_Statement): Update the calls to |
| Return_Flag and Set_Return_Flag. |
| * exp_ch7.adb (Process_Declarations): Add code to recognize hook |
| objects generated for controlled transients declared inside an |
| Exception_With_Actions. Update the calls to Return_Flag. |
| (Process_Object_Declaration): Add code to add a null guard for hook |
| objects generated for controlled transients declared inside an |
| Exception_With_Actions. Update related comment. |
| * exp_util.adb (Has_Controlled_Objects): Add code to recognize hook |
| objects generated for controlled transients declared inside an |
| Exception_With_Actions. Update the calls to Return_Flag. |
| * expander.adb (Expand): Add new case for N_Expression_With_Actions. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_util.adb:(Wrong_Type): Improve error message on a one-element |
| positional aggregate. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * par_sco.adb (Process_Decisions.Output_Header): Check and record pragma |
| SLOC only for pragmas. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * projects.texi: Minor typo fix. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-nmsc.adb (Check_File): Minor change to traces, to help debugging |
| on case-sensitive file systems. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * put_scos.adb (Put_SCOs): Do not emit decision SCO for an X decision |
| nested in a disabled pragma. |
| * scos.ads, scos.adb, par_sco.ads, par_sco.adb: Record sloc of |
| enclosing pragma, if any, for X decisions. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_prag.adb: Minor reformatting. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * a-tags.adb (Check_TSD): Avoid concatenation of strings, as it is not |
| allowed in no run time mode. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Check): When -gnatc is used, check for the source file |
| inside the ALI file with a canonical case file name. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * g-comlin.adb, g-comlin.ads (Add_Switch): Put back support for |
| overriding the separator. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb, par_sco.adb, sem_type.adb, exp_util.adb, exp_ch9.adb, |
| prj-nmsc.adb, sem_ch13.adb, exp_strm.adb: Minor reformatting. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor documentation fix for pragma Annotate. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute): add check during pre-analysis that |
| 'Result only appears in postcondition of function. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * a-tags.adb (Check_TSD): When raising PROGRAM_ERROR for a duplicated |
| external tag, include the value of the external tag in the exception |
| message. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb (Result): modify error message for misplaced 'Result |
| |
| 2011-08-04 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_rm.texi (pragma Annotate): Fix syntax description to make it |
| clear that the second argument must be an identifier. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch9.adb (Build_Barrier_Function): When compiling with |
| -fpreserve-control-flow, insert an IF statement on the barrier |
| condition to ensure that a conditional branch instruction is generated. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-part.adb, prj.adb, prj.ads, prj-tree.ads |
| (Processing_Flags.Ignore_Missing_With): new flag. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-nmsc.adb (Find_Sources, Path_Name_Of): Fix handling of |
| Source_List_File on case-insensitive systems where the file is actually |
| on a case-sensitive file system (NFS,...). |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Function_Return): In a rare case where a |
| function return contains a controlled [extension] aggregate and the |
| return statement is not part of a handled sequence of statements, wrap |
| the return in a block. This ensures that all controlled temporaries |
| generated during aggregate resolution will be picked up by the |
| finalization machinery. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): If aggregate has box-initialized |
| components, freeze type before resolution, to ensure that default |
| initializations are present for all components. |
| * sem_res.adb (Resolve_Actuals): the designated object of an |
| accces-to-constant type is a legal actual in a call to an |
| initialization procedure. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_util.adb (Extract_Renamed_Object): Add N_Type_Conversion and |
| N_Unchecked_Type_Conversion to the possible containers of a renamed |
| transient variable. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * par-ch13.adb (Aspect_Specifications_Present): recognize |
| "with Identifier'Class =>" as an aspect, so that a meaningful warning |
| is issued in Strict mode. |
| * par.adb: Fix typos in comments. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb (Result): modify error message to take into account Post |
| aspect when compiling Ada 2012 (or newer) code. |
| |
| 2011-08-04 Nicolas Roche <roche@adacore.com> |
| |
| * env.c (__gnat_clearenv): Avoid use of dynamic size array in order to |
| remove need for GCC exceptions. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * makeutl.adb (Do_Complete): Call Debug_Output with the name of the |
| project, not the source file name. |
| * prj.adb (Find_Sources.Look_For_Sources): If the source has been |
| excluded, continue looking. This excluded source will only be returned |
| if there is no other source with the same base name that is not locally |
| removed. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Intrinsic_Operator): if the result type is |
| private and one of the operands is a real literal, use a qualified |
| expression rather than a conversion which is not meaningful to the |
| back-end. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch13.adb (Aspect_Loop): when an aspect X and its classwise |
| corresponding aspect X'Class are allowed, proceed with analysis of the |
| aspect instead of skipping it. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * s-flocon.adb, s-flocon.ads: Add a body for s-flocon.ads |
| This will allow to have an Ada implementation for the subprogram. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Full_Type_Declaration): If the declaration is a |
| completion and aspects are present, apply them to the entity for the |
| type which is currently the partial view, but which is the one that |
| will be frozen. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): if the predicate |
| applies to a partial view, indicate that the full view has predicates |
| and delayed aspects. |
| (Replace_Type_Reference): Handle properly predicates that apply to the |
| full view of a private completion. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * layout.adb (Layout_Type): For composite types, do not set Esize. |
| * freeze.adb (Set_Small_Size): Remove test on alignment and do not |
| set Esize. |
| (Size_Known): Look at the RM size of components instead of the Esize. |
| (Freeze_Record_Type): Look at the RM size instead of the Esize to |
| issue warning and activate Implicit_Packing. |
| (Freeze_Entity): Likewise. Do not issue a warning for alias/atomic |
| if the Esize is not known. |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause) <Size>: Set Esize |
| for elementary types only. |
| (Analyze_Record_Representation_Clause): Look at the RM size instead |
| of the Esize to issue errors. |
| * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set Esize if it |
| is not known. |
| <E_Record_Type>: Look at the RM size instead of the Esize. Remove |
| obsolete block. |
| Look at the RM size instead of the Esize for types if the latter is |
| not known. |
| (gnat_to_gnu_field): Use Known_Esize instead of Known_Static_Esize. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_type.adb: proper handling of equality not involving anonymous |
| access types. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Create_Finalizer): Remove local variables Spec_Nod and |
| Vis_Decls. When creating a library-level finalizer for a package spec, |
| both the declaration and body of the finalizer are inserted either in |
| the visible or private declarations of the package spec. |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Derive_Subprograms): Complete assertion to request the |
| use of the full-view of a type when invoking Is_Ancestor. |
| * sem_type.adb (Is_Ancestor): For consistency, when the traversal of |
| the full-view of private parents is requested, then use also the |
| full-view of the parent of the first derivation. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * s-taprop-vxworks.adb (Enter_Task): Use System.Float_Control.Reset |
| instead of the locally imported procedure. |
| * s-taprop-mingw.adb (Enter_Task): Ditto. |
| * s-valrea.adb (Scan_Real): Ditto. |
| * s-imgrea.adb (Set_Image_Real): Ditto. |
| * s-flocon.ads: Make the package pure. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sinfo.ads, sinfo.adb (Debug_Statement, Set_Debug_Statement): Remove. |
| * tbuild.ads, tbuild.adb (Make_Pragma): Adjust accordingly. |
| * sinfo-cn.ads, sinfo-cn.adb (Change_Name_To_Procedure_Call_Statement): |
| New subprogram, moved here from... |
| * par.adb, par-ch5.adb (P_Statement_Name): ... here. |
| * par-prag.adb (Par.Prag, case Pragma_Debug): Do not perform any |
| rewriting of the last argument into a procedure call statement here... |
| * sem_prag.adb (Analyze_Pragma, case Pragma_Debug): ...do it there |
| instead. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb: Minor reformatting. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * erroutc.adb: Minor reformatting. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * par_sco.adb: Comment update. |
| |
| 2011-08-04 Tristan Gingold <gingold@adacore.com> |
| |
| * s-flocon.ads: New file. |
| * g-flocon.ads: Now a renaming of s-flocon. |
| * Makefile.rtl: Add s-flocon.o |
| |
| 2011-08-04 Javier Miranda <miranda@adacore.com> |
| |
| * exp_strm.adb (Build_Array_Input_Function): if the array type is |
| constrained, do not attempt to build a subtype of it. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * errout.ads Change comments: remove 'R'M as an example where quotes |
| are needed; add ALFA as another case where quotes are not needed |
| * erroutc.adb (Set_Msg_Insertion_Reserved_Word): add ALFA as another |
| case where quotes are not needed. |
| * sem_ch11.adb, sem_ch13.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, |
| sem_ch5.adb, sem_ch6.adb, sem_ch9.adb, sem_prag.adb, sem_res.adb: |
| Remove all occurrences of 'A'L'F'A |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch13.adb: check legality of invariant pragma. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * bindgen.adb: Add comments. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * einfo.adb, einfo.ads: Free Flag254 and make Formal_Proof_On a |
| synthesized flag. |
| * sem_prag.adb (Analyze_Pragma): record the pragma Annotate |
| (Formal_Proof, On/Off) in the Rep_Item list of the current subprogram. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.adb, exp_ch6.adb, sem_ch3.adb, layout.adb, sem_ch5.adb, |
| osint-c.ads, sem_util.ads, gnat1drv.adb, targparm.ads, sem_ch6.adb, |
| sem_ch13.adb, s-pooloc.adb: Minor reformatting. |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * s-pooloc.ads, s-pooglo.ads: Minor reformatting |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| PR ada/47880 |
| * s-pooloc.adb (Deallocate): Fix the case of deallocating the only |
| allocated object. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.ads, exp_ch4.adb: Minor reformatting. |
| |
| 2011-08-04 Jerome Lambourg <lambourg@adacore.com> |
| |
| * back_end.ads (Gen_Or_Update_Object_File): Add more comments. |
| |
| 2011-08-04 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch4.adb (Expand_Composite_Equality): code cleanup: use component |
| type in all cases to compute list of primitive operations, because full |
| view may be an itype that is not attached to the list of declarations. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * bindgen.adb (Gen_Adafinal_Ada): Generate an early return if the |
| library has already been finalized. |
| (Gen_Adafinal_C): Likewise. |
| (Gen_Adainit_Ada): Generate an early return if the library has |
| already been elaborated. |
| (Gen_Adainit_C): Likewise. |
| (Gen_Output_File_Ada): Generate an elaboration flag. |
| (Gen_Output_File_C): Likewise. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch4.adb (Expand_Allocator_Expression): Disable the generation of |
| Set_Finalize_Address_Ptr for CodePeer because Finalize_Address was not |
| built in the first place. |
| (Expand_N_Allocator): Disable the generation of Set_Finalize_Address_Ptr |
| for CodePeer because Finalize_Address was not built to begin with. |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Ditto. |
| |
| 2011-08-04 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_tmp_name): Use current process id to create temp |
| filenames, this ensures unicity of filenames across processes. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * bindgen.adb (Gen_Finalize_Library_Ada): Rename generated routine |
| Raise_Controlled to Raise_From_Controlled_Operation. Update the |
| signature of Raise_From_Controlled_Operation by adding flag From_Abort. |
| Add False as the actual to From_Abort in the generated call to |
| Raise_From_Controlled_Operation. |
| |
| 2011-08-04 Jerome Lambourg <lambourg@adacore.com> |
| |
| * osint-c.ads, osint-c.adb (Set_Library_Info_Name): Move to declaration |
| so that the ali file name can be retrieved from outside of this package. |
| * back_end.ads, back_end.adb (Gen_Or_Update_Object_File): New method |
| doing nothing in the general case, but used to update the object file |
| timestamp if directly generated by the backend. |
| * gnat1drv.adb (Gnat1drv): Make sure the object file's timestamp is set |
| to a later time than the ali file one. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * einfo.adb, einfo.ads (Formal_Proof_On): new flag set on subprogram |
| entities whose body contains an Annotate pragma which forces formal |
| proof on this body. |
| * sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, |
| sem_ch6.adb, sem_ch9.adb, sem_res.adb: Adapt call to |
| Mark_Non_ALFA_Subprogram to pass in a message and node. |
| * sem_prag.adb (Analyze_Pragma): add treatment of pragma Annotate |
| (Forma_Proof, On) which sets the flag Formal_Proof_On in the |
| surrounding subprogram. |
| * sem_util.adb, sem_util.ads (Mark_Non_ALFA_Subprogram, |
| Mark_Non_ALFA_Subprogram_Unconditional): if the subprogram being marked |
| as not in ALFA is annotated with Formal_Proof being On, then an error |
| is issued based on the additional parameters for message and node. |
| * snames.ads-tmpl (Name_Formal_Proof): new name for annotation. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch3.adb (Expand_Freeze_Class_Wide_Type): Do not generate |
| Finalize_Address when CodePeer is enabled. |
| |
| 2011-08-04 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_tmp_name): Use _tempnam() instead of tempnam() as |
| the latter returns a pointer to a static buffer which is deallocated |
| at the end of the routine. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Array_Type_Declaration): move test for type in ALFA |
| after index creation; mark unconstrained base array type generated as |
| being in/not in ALFA as well |
| (Make_Index): mark subtype created as in/not in ALFA |
| * sem_ch5.adb (Analyze_Iteration_Scheme): mark entity for iterating |
| over a loop as in/not in ALFA, depending on its type and form of loop |
| iteration. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Object_Declarations): Initialize flag Abort |
| directly to False on .NET and JVM. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Constrain_Enumeration, Constrain_Integer): remove |
| constraint that subtype must come from source code to be in ALFA, so |
| that anonymous subtypes can be in ALFA too. |
| |
| 2011-08-04 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): remove obsolete addition of |
| reference for ALFA mode. |
| * lib-xref-alfa.adb, lib-xref.ads (Traverse_Compilation_Unit): make |
| procedure public so as to use it from formal verification back-end. |
| |
| 2011-08-04 Jerome Lambourg <lambourg@adacore.com> |
| |
| * g-comlin.adb (For_Each_Simple_Switch.Is_In_Config): Remove the |
| invalid checks of the Parameter, making Remove_Switch not working |
| correctly. |
| |
| 2011-08-04 Arnaud Charlet <charlet@adacore.com> |
| |
| * targparm.ads: Update header: no run-time exception is needed on this |
| file. |
| |
| 2011-08-04 Vincent Celier <celier@adacore.com> |
| |
| * a-fihema.adb: Use System.IO instead of GNAT.IO |
| |
| 2011-08-04 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch3.adb (Access_Definition): Anonymous access to subprogram types |
| are forbidden in Compiler_Unit mode. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * sem_util.adb: Minor reformatting. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * bindgen.adb (Gen_Finalize_Library_Ada): Update the import string for |
| library-level finalizers. |
| (Gen_Finalize_Library_C): Update the import string for library-level |
| finalizers. |
| (Gen_Finalize_Library_Defs_C): Update the definition name of a |
| library-level finalizer. |
| * exp_ch7.adb: Remove with and use clauses for Stringt. |
| (Create_Finalizer): Remove local variables Conv_Name, Prag_Decl, |
| Spec_Decl. Add local variable Body_Id. The names of library-level |
| finalizers are now manually fully qualified and are no longer external. |
| A single name is now capable of servicing .NET, JVM and non-VM targets. |
| Pragma Export is no longer required to provide visibility for the name. |
| (Create_Finalizer_String): Removed. |
| (New_Finalizer_Name): New routine which mimics New_..._Name. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_elab.adb (Check_Internal_Call_Continue): Change the type of the |
| elaboration counter to Standard_Short_Integer. |
| * sem_util.adb (Build_Elaboration_Entity): Likewise. |
| * bindgen.adb (Gen_Elab_Externals_Ada): Adjust to above change. |
| (Gen_Elab_Externals_C): Likewise. |
| |
| 2011-08-04 Ed Falis <falis@adacore.com> |
| |
| * system-vxworks-arm.ads, system-vxworks-sparcv9.ads, |
| system-vxworks-ppc.ads, system-vxworks-m68k.ads, |
| system-vxworks-mips.ads, system-vxworks-x86.ads |
| (Always_Compatible_Rep): set to False for all VxWorks targets. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * par_sco.adb, prj-proc.adb, make.adb, bindgen.adb, prj.adb, prj.ads, |
| makeutl.adb, makeutl.ads, prj-nmsc.adb, exp_ch5.adb, exp_ch12.adb, |
| exp_ch7.ads, exp_util.ads, sem_util.ads, g-comlin.ads, exp_ch6.adb, |
| exp_ch6.ads, lib-xref.ads, exp_ch7.adb, exp_util.adb, exp_dist.adb, |
| exp_strm.adb, gnatcmd.adb, freeze.adb, g-comlin.adb, lib-xref-alfa.adb, |
| sem_attr.adb, sem_prag.adb, sem_util.adb, sem_elab.adb, sem_ch8.adb, |
| sem_ch11.adb, sem_eval.adb, sem_ch13.adb, sem_disp.adb, a-fihema.adb: |
| Minor reformatting and code reorganization. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * projects.texi: Added doc for aggregate projects. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj-nmsc.adb, prj-env.adb (Process_Declarative_Items): |
| Add support for overriding the Project_Path in aggregate projects. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * a-cofove.ads: Minor reformatting. |
| |
| 2011-08-04 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Update the comment |
| on the generated code. |
| (Build_Finalize_Statements): Update the comment on the generated code. |
| (Build_Initialize_Statements): Update the comment on the generated code. |
| (Build_Object_Declarations): Add local variable Result. The object |
| declarations are now built in sequence. |
| * rtsfind.ads: Add RE_Exception_Occurrence_Access to tables RE_Id and |
| RE_Unit_Table. |
| |
| 2011-08-04 Robert Dewar <dewar@adacore.com> |
| |
| * checks.adb, alfa.adb, alfa.ads: Minor reformatting. |
| |
| 2011-08-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.ads (Elaboration_Entity): Document new definition and use. |
| (Elaboration_Entity_Required): Adjust to above change. |
| * exp_attr.adb (Expand_N_Attribute_Reference): Likewise. |
| * exp_ch12.adb: And with and use for Snames. |
| (Expand_N_Generic_Instantiation): Test 'Elaborated attribute. |
| * exp_util.adb (Set_Elaboration_Flag): Likewise. |
| * sem_attr.adb (Analyze_Attribute) <Check_Library_Unit>: Delete. |
| <Check_Unit_Name>: Deal with N_Expanded_Name. |
| <Attribute_Elaborated>: Extend to all unit names. |
| * sem_elab.adb: And with and use for Uintp. |
| (Check_Internal_Call_Continue): Adjust to Elaboration_Entity change. |
| * sem_util.ads (Build_Elaboration_Entity): Adjust comment. |
| * sem_util.adb (Build_Elaboration_Entity): Change type to Integer. |
| * bindgen.adb (Gen_Elab_Externals_Ada): New local subprogram taken |
| from Gen_Adainit_Ada. |
| (Gen_Elab_Externals_C): Likewise, but taken from Gen_Adainit_C. |
| (Gen_Adafinal_Ada): Remove redundant test. In the non-main program |
| case, do not call System.Standard_Library.Adafinal; instead call |
| finalize_library if needed. |
| (Gen_Adafinal_C): Likewise. |
| (Gen_Adainit_Ada): Do not set SSL.Finalize_Library_Objects in the |
| non-main program case. |
| (Gen_Adainit_C): Generate a couple of external declarations here. |
| In the main program case, set SSL.Finalize_Library_Objects. |
| (Gen_Elab_Calls_Ada): Adjust to Elaboration_Entity change. |
| (Gen_Elab_Calls_C): Likewise. |
| (Gen_Finalize_Library_Ada): Likewise. Skip SAL interface units. |
| (Gen_Finalize_Library_C): Likewise. Generate a full function. |
| (Gen_Main_C): Put back call to Ada_Final and don't finalize library |
| objects here. |
| (Gen_Output_File_Ada): Generate pragma Linker_Destructor for Ada_Final |
| if -a is specified. Call Gen_Elab_Externals_Ada. Move around call to |
| Gen_Adafinal_Ada. |
| (Gen_Output_File_C): Generate __attribute__((destructor)) for Ada_Final |
| if -a is specified. Call Gen_Elab_Externals_C. Remove useless couple |
| of external declarations. Call Gen_Finalize_Library_C. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj.adb, prj.ads, makeutl.adb, makeutl.ads (Complete_Mains, |
| Compute_Compilation_Phases): new subprogram. |
| (Builder_Data, Builder_Project_Tree_Data): new subprogram and type |
| The number of mains as well as the various compilation phases that |
| need to be run are now project tree specific, since various |
| aggregated trees might have different requirements. In particular, |
| they do not all require bind or link phases. |
| |
| 2011-08-04 Emmanuel Briot <briot@adacore.com> |
| |
| * prj.adb, prj.ads, makeutl.adb, makeutl.ads, prj-env.adb |
| (Project_Tree_Appdata): New type. |
| It is now possible to associate application-specific data to a project |
| tree. In particular, this is used in the gprbuild builder to avoid a |
| number of global tables and htables, especially now that there can be |
| several project trees loaded at once because of aggregate projects. |
| (Debug_Name): new procedure. |
| * projects.texi: Clarify syntax of "**" for Source_Dirs |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj.ads, makeutl.adb, makeutl.ads (Queue.Insert): now also inserts |
| the "roots" for a main. |
| (Fill_From_Project): add support for aggregate projects. Main units |
| in aggregated projects are now automatically added in the list of |
| files to build (although this fails later on in gprbuild, because |
| these files are not using the root proejct tree, so this needs |
| further cleanup) |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Conditional_Expression): only allow boolean |
| conditional expression in ALFA. |
| * sem_res.adb (Resolve_Conditional_Expression): mark non-boolean |
| expressions as not in ALFA. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * a-cofove.adb: Minor reformatting. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads |
| (Insert_Project_Sources, Insert_withed_Sources_For): moved from the |
| gprbuild sources. |
| These packages are more logically placed in the Queue package, since |
| they manipulate the queue. It is also likely that they can be adapted |
| for gnatmake, thus sharing more code. |
| (Finish_Program, Fail_Program): moved from the gprbuild sources, so |
| that we could move the above. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * errutil.adb (Finalize): clean up the list of error messages on exit. |
| Calling this subprogram multiple times will no longer show duplicate |
| error messages on stderr. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * g-comlin.adb, g-comlin.ads (Set_Command_Line): ignore the parameter |
| Getopt_Switches when we have already define a command line |
| configuration. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch11.adb (Analyze_Raise_xxx_Error): do not mark such nodes as not |
| in ALFA. Instead, they are considered as assertions to prove. |
| * sem_ch4.adb (Analyze_Conditional_Expression): do not always mark such |
| nodes as not in ALFA. Instead, include conditional expressions in ALFA |
| if they have no ELSE part, or if they occur in pre- and postconditions, |
| where the Condition cannot have side-effects in ALFA |
| (Analyze_Membership_Op): do not mark such nodes as not in ALFA |
| (Analyze_Type_Conversion): do not always mark such nodes as not in ALFA. |
| Instead, include type conversion between scalar types in ALFA. |
| * sem_ch6.adb (Process_Formals): correctly mark a parameter in ALFA |
| if-and-only-if its type is in ALFA. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * scos.adb, get_scos.adb, put_scos.adb |
| New code letter for decisions: G (entry guard) |
| * par_sco.adb |
| (Traverse_Subprogram_Body): Rename to... |
| (Traverse_Subprogram_Or_Task_Body): New subrpogram. |
| (Traverse_Protected_Body): New subprogram |
| (Traverse_Declarations_Or_Statements): Add traversal of task bodies, |
| protected bodies and entry bodies. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * einfo.adb, einfo.ads (Is_Postcondition_Proc): new flag for procedure |
| entities with get/set subprograms, which is set on procedure entities |
| generated by the compiler for a postcondition. |
| * sem_ch6.adb (Process_PPCs): set new flag on postcondition procedures |
| * alfa.adb, alfa.ads (Get_Entity_For_Decl): new function returning the |
| entity for a declaration |
| (Get_Unique_Entity_For_Decl): new function returning an entity which |
| represents a declaration, so that matching spec and body have the same |
| entity. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * a-except-2005.adb, a-cfhama.adb, a-cfhase.adb, a-cfhase.ads, |
| a-cforma.adb, a-cforse.ads, a-cforse.adb: Minor reformatting |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * lib-xref-alfa.adb (Detect_And_Add_ALFA_Scope): make the subprogram |
| library-level because retriction No_Implicit_Dynamic_Code in the |
| front-end prevents its definition as a local subprogram |
| (Traverse_Compilation_Unit): extract new procedure from Add_ALFA_File, |
| for reuse in other contexts |
| (Traverse_Declarations_Or_Statements, |
| Traverse_Handled_Statement_Sequence, Traverse_Package_Body, |
| Traverse_Package_Declaration, Traverse_Subprogram_Body): make all these |
| procedures take a callback parameter to be called on all declarations |
| * lib-xref.ads |
| (Traverse_All_Compilation_Units): new generic function to traverse a |
| compilation unit and call a callback parameter on all declarations |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * sem_prag.adb (Process_Interface_Name): Allow duplicated export names |
| in Java since they are always enclosed in a namespace that |
| differentiates them, and overloaded entities are supported by the VM. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * checks.adb (Determine_Range): If a computed bound of an operation is |
| outside the range of the base type of the expression, and overflow |
| checks are enabled, the result is unknown and cannot be used for any |
| subsequent constant folding. |
| * sem_eval.adb (Compile_Time_Compare): if the bounds of one operand are |
| unknown, so is the result of the comparison. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-except-2005.adb (Raise_From_Controlled_Operation): Add new formal |
| From_Abort. When finalization was triggered by an abort, propagate |
| Standard'Abort_Signal rather than Program_Error. |
| * a-except-2005.ads (Raise_From_Controlled_Operation): Add new formal |
| From_Abort. |
| * a-except.adb (Raise_From_Controlled_Operation): Add new formal |
| From_Abort. When finalization was triggered by an abort, propagate |
| Standard'Abort_Signal rather than Program_Error. |
| * a-except.ads:(Raise_From_Controlled_Operation): Add new formal |
| From_Abort. |
| * exp_ch7.adb:(Build_Adjust_Or_Finalize_Statements): New local variable |
| Abort_Id. Update the calls to Build_Object_Declarations and |
| Build_Raise_Statement to include Abort_Id. |
| (Build_Adjust_Statements): New local variable Abort_Id. Update the |
| calls to Build_Object_Declarations and Build_Raise_Statement to include |
| Abort_Id. |
| (Build_Finalize_Statements): New local variable Abort_Id. Update the |
| calls to Build_Object_Declarations and Build_Raise_Statement to include |
| Abort_Id. |
| (Build_Components): Create an entity for Abort_Id when exceptions are |
| allowed on the target. |
| (Build_Finalizer): New local variable Abort_Id. |
| (Build_Initialize_Statements): New local variable Abort_Id. Update the |
| calls to Build_Object_Declarations and Build_Raise_Statement to include |
| Abort_Id. |
| (Build_Object_Declarations): Add new formal Abort_Id. Create the |
| declaration of flag Abort_Id to preserve the original abort status |
| before finalization code is executed. |
| (Build_Raise_Statement): Add new formal Abort_Id. Pass Abort_Id to |
| runtime routine Raise_From_Controlled_Operation. |
| (Create_Finalizer): Update the call to Build_Raise_Statement to include |
| Abort_Id. Update the call to Build_Object_Declarations to include |
| Abort_Id. Update the layout of the finalizer body. |
| (Make_Handler_For_Ctrl_Operation): Add an actual for From_Abort. |
| (Process_Transient_Objects): New local variable Abort_Id. Remove the |
| clunky code to create all flags and objects related to |
| exception propagation and replace it with a call to |
| Build_Object_Declarations. Update the call to Build_Raise_Statement to |
| include Abort_Id. |
| * exp_ch7.ads (Build_Object_Declarations): Moved from body to spec. |
| Add new formal Abort_Id and associated comment on its use. |
| (Build_Raise_Statement): Add new formal Abort_Id and associated comment |
| on its use. |
| * exp_intr.adb (Expand_Unc_Deallocation): New local variable Abort_Id. |
| Remove the clunky code to create all flags and objects related to |
| exception propagation and replace it with a call to |
| Build_Object_Declarations. Update the call to Build_Raise_Statement. |
| |
| 2011-08-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * s-tassta.adb: Fix minor typos. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * rtsfind.ads, makeutl.ads, prj.ads, prj.adb, make.adb, |
| lib-writ.adb, makeutl.adb, s-soflin.ads, clean.adb: Minor reformatting. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch7.adb (Create_Finalizer): Treat freeze nodes in similar fashion |
| to packages. This ensures that the finalizer body will not end up |
| inside the freeze node. |
| (Process_Declarations): Add code to detect whether a freeze node has a |
| nested finalization collection. |
| |
| 2011-08-03 Pascal Obry <obry@adacore.com> |
| |
| * g-awk.adb, g-awk.ads: Make GNAT.AWK API compatible with Ada 2005. |
| (Current_Session): Return a not null access to Session_Type. |
| (Default_Session): Likewise. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * a-cfdlli.adb, bindgen.adb, exp_ch4.adb, exp_ch13.adb, sem_warn.adb, |
| exp_ch3.adb, exp_ch3.ads: Minor reformatting. |
| |
| 2011-08-03 Pascal Obry <obry@adacore.com> |
| |
| * g-awk.ads: Minor comment fix. |
| |
| 2011-08-03 Sergey Rybin <rybin@adacore.com> |
| |
| * tree_io.ads (ASIS_Version_Number): Update because of the changes in |
| the tree structure related to discriminant constraints. |
| Original_Discriminant cannot be used any more for computing the |
| defining name for the reference to a discriminant. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_disp.adb (Is_Tag_Indeterminate): If the return type of the |
| function is not visibly tagged, this is not a dispatching call and |
| therfore is not Tag_Indeterminate, even if the function is marked as |
| dispatching on result. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch13.adb: Add with and use clauses for Restrict and Rident. |
| (Expand_N_Free_Statement): Add a guard to protect against run-times |
| which do not support controlled types. |
| * exp_ch3.adb (Expand_Freeze_Class_Wide_Type): Add a guard to protect |
| against run-times which do not support controlled types. |
| * exp_ch4.adb (Complete_Controlled_Allocation): Add a guard to protect |
| against run-times which do not support controlled types. |
| * exp_ch7.adb (Build_Finalization_Collection): Add a guard to protect |
| against run-times which do not support controlled types. |
| * exp_util.adb (Needs_Finalization): Code reformatting. Add a guard to |
| protect against run-times which do not support controlled types. |
| |
| 2011-08-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_intr.adb: Put back with and use clauses for Exp_Ch11. |
| (Expand_Unc_Deallocation): Expand the AT_END handler at the very end. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): indicate that the cursor is |
| modified in the source, to prevent spurious warnings when compiling |
| with -gnatg. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * a-except-2005.adb: Minor reformatting. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_warn.adb (Check_One_Unit): if the only mention of a withed unit |
| is a renaming declaration in the private part of a package, do not emit |
| a warning that the with_clause could be moved because the renaming may |
| be used in the body or in a child unit. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): |
| Propagate the Comes_From_Source attribute from the original return |
| object to the renaming. |
| |
| 2011-08-03 Jose Ruiz <ruiz@adacore.com> |
| |
| * exp_ch7.adb (Build_Raise_Statement): Do not call |
| Raise_From_Controlled_Operation when this routine is not present in |
| the run-time library. |
| (Cleanup_Protected_Object, Cleanup_Task): For restricted run-time |
| libraries (Ravenscar), tasks are non-terminating, and protected objects |
| and tasks can only appear at library level, so we do not want |
| finalization of protected objects nor tasks. |
| * exp_intr.adb: Minor clarification in comment. |
| bindgen.adb (Gen_Adainit_Ada, Gen_Main_C, Gen_Output_File_Ada, |
| Gen_Output_File_C): Remove references to finalization of library-level |
| objects when using restricted run-time libraries. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Build_Discriminant_Constraints): Set |
| Original_Discriminant only if the parent type is a generic formal. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch13.adb: Add with and use clause for Targparm; |
| (Expand_N_Free_Statement): Prevent the generation of a custom |
| Deallocate on .NET/JVM targets since this requires pools and address |
| arithmetic. |
| * exp_ch4.adb (Expand_Allocator_Expression): When compiling for |
| .NET/JVM targets, attach the newly allocated object to the access |
| type's finalization collection. Do not generate a call to |
| Set_Finalize_Address_Ptr on .NET/JVM because this routine does not |
| exist in the runtime. |
| (Expand_N_Allocator): When compiling for .NET/JVM targets, do not |
| create a custom Allocate for object that do not require initialization. |
| Attach a newly allocated object to the access type's finalization |
| collection on .NET/JVM. |
| * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Add special processing for |
| assignment of controlled types on .NET/JVM. The two hidden pointers |
| Prev and Next and stored and later restored after the assignment takes |
| place. |
| * exp_ch6.adb (Expand_Call): Add local constant Curr_S. Add specialized |
| kludge for .NET/JVM to recognize a particular piece of code coming from |
| Heap_Management and change the call to Finalize into Deep_Finalize. |
| * exp_ch7.adb (Build_Finalization_Collection): Allow the creation of |
| finalization collections on .NET/JVM only for types derived from |
| Controlled. Separate the association of storage pools with a collection |
| and only allow it on non-.NET/JVM targets. |
| (Make_Attach_Call): New routine. |
| (Make_Detach_Call): New routine. |
| (Process_Object_Declarations): Suppress the generation of |
| build-in-place return object clean up code on .NET/JVM since it uses |
| pools. |
| * exp_ch7.ads (Make_Attach_Call): New routine. |
| (Make_Detach_Call): New routine. |
| * exp_intr.adb Add with and use clause for Targparm. |
| (Expand_Unc_Deallocation): Detach a controlled object from a collection |
| on .NET/JVM targets. |
| * rtsfind.ads: Add entries RE_Attach, RE_Detach and |
| RE_Root_Controlled_Ptr to tables RE_Id and RE_Unit_Table. |
| * snames.ads-tmpl: Add name Name_Prev. Move Name_Prev to the special |
| names used in finalization. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-fihema.adb: Add with and use clauses for System.Soft_Links. |
| (Attach, Detach): Lock the current task when chaining an object onto a |
| collection. |
| |
| 2011-08-03 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * a-except.adb, a-except-2005.adb (Raise_From_Controlled_Operation): |
| Rewritten to create the message strings when the exception is not |
| raised by an abort during finalization. |
| * a-except.ads, a-except-2005.ads: Add pragma Export for procedure |
| Raise_From_Controlled_Operation and update its associated comment. |
| * a-fihema.ads, a-fihema.adb: New GNAT unit. |
| Ada.Finalization.Heap_Management provides key functionality |
| associated with controlled objects on the heap, their creation, |
| finalization and reclamation. Type Finalization_Collection is |
| effectively a wrapper which sits ontop of a storage pool and performs |
| all necessary bookkeeping for all the objects it contains. Each |
| access-to-controlled or access-to-class-wide type receives a collection |
| as part of its expansion. The compiler generates buffer code and |
| invokes Allocate / Deallocate to create and destroy allocated |
| controlled objects. |
| * a-finali.adb ("="): Removed. |
| * a-finali.ads ("="): Removed. Controlled types no longer carry hidden |
| fields Prev and Next. |
| * ali.adb (Scan_ALI): Add parsing code to process PF / Has_Finalizer. |
| A library unit with at least one controlled object on the library level |
| has a special finalizer which is invoked by the binder. To signal this, |
| ali files carry field PF. |
| * ali.ads: New field in type Unit_Record called Has_Finalizer. Add |
| associated comment on field usage. |
| * a-tags.adb (Get_RC_Offset): Removed. |
| (Needs_Finalization): New routine. |
| * a-tags.ads: Update the structure of the GNAT dispatch tables. |
| Dispatch tables now carry field Needs_Finalization which provides |
| runtime indication whether a type is controlled or has controlled |
| components or both. Remove field RC_Offset. |
| (Get_RC_Offset): Removed along with its associated pragma Export. |
| Since tagged types with controlled components no longer carry hidden |
| field _controller, the special mechanism to retrieve its location is no |
| longer needed. |
| (Needs_Finalization): New routine. |
| * atree.ads, atree.adb (Elist24): New routine. |
| (Set_Elist24): New routine. |
| * atree.h: Add a define clause for Elist24. |
| * bindgen.adb New library-level variable Lib_Final_Built. |
| (Gen_Adafinal_Ada): Reimplemented. Depending on the restrictions or the |
| presence of a VM target, the routine generates calls to the proper |
| library finalization routine. |
| (Gen_Adainit_Ada): Import Finalize_Library_Objects only on non-VM |
| targets. Set the correct library finalization routine depending on |
| whether the library has controlled objects or this is a VM compilation. |
| (Gen_Finalize_Library_Ada): New routine. This procedure generates calls |
| to library-level finalizers of compiled units in reverse order of |
| elaboration. It also produces exception management code and reraises a |
| potential exception after all units have been finalized. |
| (Gen_Finalize_Library_C): New routine. This procedure generates calls to |
| library-level finalizers of compiled units in reverse order of |
| elaboration. |
| (Gen_Finalize_Library_Defs_C): New routine. This procedure generates the |
| definitions of all library-level finalizers available to the compilation |
| (Gen_Main_Ada): Directly call Adafinal which now contails all target |
| dependent code. |
| (Gen_Main_C): Add new local constant Needs_Library_Finalization. Call |
| System.Standard_Library.Adafinal directly. If the library needs |
| finalization actions, create the sequence of finalization calls. |
| (Gen_Output_File_Ada): Alphabetize local variables and constants. |
| Generate a with clause for System.Soft_Links when compiling for a VM. |
| Remove the code which imports System.Standard_Library.Adafinal as |
| Do_Finalize. Generate the library finalization routine. |
| (Gen_Output_File_C): Add new local constant Needs_Library_Finalization. |
| If the library needs finalization actions, create all the definitions |
| of library- level finalizers. |
| (Has_Finalizer): New routine. Determines whether at least one compiled |
| unit has a library-level finalizer. |
| Add type Qualification_Mode. |
| (Set_Unit_Name): Add a formal which controls the replacement of a dot. |
| * einfo.adb: New usage of field 15 as Return_Flag. |
| Remove Finalization_Chain_Entity from the usages of field 19. |
| Remove Associated_Final_Chain from the usages of field 23. |
| New usage of field 23 as Associated_Collection. |
| New usage of field 24 as Finalizer. |
| New usage of flag 252 as Is_Processed_Transient. |
| (Associated_Final_Chain): Removed. |
| (Associated_Collection): New routine. |
| (Finalization_Chain_Entity): Removed. |
| (Finalizer): New routine. |
| (Is_Finalizer): New routine. |
| (Is_Processed_Transient): New routine. |
| (Return_Flag): New routine. |
| (Set_Associated_Final_Chain): Removed. |
| (Set_Associated_Collection): New routine. |
| (Set_Finalization_Chain_Entity): Removed. |
| (Set_Finalizer): New routine. |
| (Set_Is_Processed_Transient): New routine. |
| (Set_Return_Flag): New routine. |
| (Write_Entity_Flags): Include Is_Processed_Transient to the list of |
| displayed flags. |
| (Write_Field8_Name): Alphabetize the output. |
| (Write_Field11_Name): Alphabetize the output. |
| (Write_Field12_Name): Alphabetize the output. |
| (Write_Field13_Name): Alphabetize the output. |
| (Write_Field14_Name): Alphabetize the output. |
| (Write_Field15_Name): Alphabetize the output. |
| (Write_Field16_Name): Alphabetize the output. |
| (Write_Field17_Name): Alphabetize the output. |
| (Write_Field18_Name): Alphabetize the output. |
| (Write_Field19_Name): Alphabetize the output. Remove the output of |
| Finalization_Chain_Entity. |
| (Write_Field20_Name): Alphabetize the output. |
| (Write_Field21_Name): Alphabetize the output. |
| (Write_Field22_Name): Alphabetize the output. |
| (Write_Field23_Name): Alphabetize the output. Remove the output of |
| Associated_Final_Chain. Add output for Associated_Collection. |
| (Write_Field24_Name): Alphabetize the output. |
| (Write_Field25_Name): Add output for Finalizer. |
| (Write_Field26_Name): Alphabetize the output. |
| (Write_Field27_Name): Alphabetize the output. |
| (Write_Field28_Name): Alphabetize the output. |
| * einfo.ads: Add new field description for Associated_Collection and |
| its uses in nodes. |
| Remove Associated_Final_Chain and its uses in nodes. |
| Remove Finalization_Chain_Entity and its uses in nodes. |
| Add new field description for Finalizer and its uses in nodes. |
| Add new synthesized attribute Is_Finalizer. |
| Add new flag description for Is_Processed_Transient and its uses in |
| nodes. |
| Add new field description for Return_Flag and its uses in nodes. |
| (Associated_Final_Chain): Removed along with its pragma Inline. |
| (Associated_Collection): New routine and pragma Inline. |
| (Finalization_Chain_Entity): Removed along with its pragma Inline. |
| (Finalizer): New routine and pragma Inline. |
| (Is_Finalizer): New routine and pragma Inline. |
| (Is_Processed_Transient): New routine and pragma Inline. |
| (Return_Flag): New routine and pragma Inline. |
| (Set_Associated_Final_Chain): Removed along with its pragma Inline. |
| (Set_Associated_Collection): New routine and pragma Inline. |
| (Set_Finalization_Chain_Entity): Removed along with its pragma Inline. |
| (Set_Finalizer): New routine and pragma Inline. |
| (Set_Is_Processed_Transient): New routine and pragma Inline. |
| (Set_Return_Flag): New routine and pragma Inline. |
| * exp_aggr.adb: Alphabetize subprograms. |
| (Build_Array_Aggr_Code): Remove formal Flist and its associated comment. |
| (Build_Record_Aggr_Code): Remove formals Flist and Obj along with their |
| associated comments. Remove local variables External_Final_List and |
| Attach. |
| Rename Ctrl_Stuff_Done to Finalization_Done. Rename local variable A to |
| Ancestor. Remove the retrieval of finalization lists. Update the call to |
| Make_Adjust_Call. |
| (Convert_Aggr_In_Allocator): Remove the retrieval of finalization |
| lists. Update the call to Late_Expansion. |
| (Convert_Aggr_In_Assignment): Update the call to Late_Expansion. |
| (Convert_Aggr_In_Object_Decl): Update the call to Late_Expansion. |
| (Gen_Assign): Remove the retrieval of the finalization list used to |
| build the assignment. Update the calls to Make_Init_Call and |
| Make_Adjust_Call. |
| (Gen_Ctrl_Actions_For_Aggr): Renamed to Generate_Finalization_Actions. |
| Remove the mechanism to determine attachment levels and finalization |
| list retrieval. Remove the processing for coextensions. |
| (Init_Controller): Removed. Controllers no longer exist. |
| (Late_Expansion): Remove formals Flist and Obj along with their |
| associated comments. Update the calls to Build_Record_Aggr_Code and |
| Build_Array_Aggr_Code. |
| * exp_ch13.adb (Expand_N_Free_Statement): New routine. |
| (Expand_N_Freeze_Entity): Add special processing for finalizers which |
| appear in entry bodies, protected subprograms and task bodies. |
| * exp_ch13.ads (Expand_N_Free_Statement): New routine. |
| * exp_ch3.adb (Add_Final_Chain): Removed. |
| (Build_Array_Init_Proc): Alphabetize local variables. |
| (Build_Assignment): Alphabetize local variables. Update the call to |
| Maked_Adjust_Call. |
| (Build_Class_Wide_Master): Rename local variables to better reflect |
| their role. |
| (Build_Discriminant_Assignments): Code reformatting. |
| (Build_Init_Call_Thru): Code reformatting. |
| (Build_Init_Procedure): Code reformatting. Generate a special version |
| of Deep_Finalize which is capable of finalizing all initialized |
| components and ignore the rest. |
| (Build_Init_Statements): Rename local variables to better reflect their |
| role. |
| Reimplement the mechanism to include the creation and update of an index |
| variable called a "counter". It is used as a bookmark for tracing |
| initialized and non-initialized components. |
| (Build_Initialization_Call): Remove local variable Controller_Typ. |
| Alphabetize all local variables. Remove the initialization of the |
| record controller and update the call to Make_Init_Call. |
| (Build_Record_Init_Proc): Rename formal Pe to Rec_Ent. |
| New local variable Counter. |
| (Constrain_Array): Alphabetize. |
| (Expand_Freeze_Array_Type): Create a collection instead of a |
| finalization list. |
| (Expand_Freeze_Class_Wide_Type): New routine. Creates TSS primitive |
| Finalize_Address which is used in conjunction with allocated controlled |
| objects. |
| (Expand_N_Object_Declaration): Remove the creation of a finalization |
| list for anonymous access types. Update the calls to Make_Init_Call and |
| Make_Adjust_Call. |
| (Expand_Freeze_Record_Type): Remove local variable Flist. Remove the |
| retrieval of finalization lists. Remove the expansion of the record |
| controller. Create TSS primitive Finalize_Address used in conjunction |
| with controlled objects on the heap. Create finalization collections |
| for access-to-controlled record components. |
| (Expand_Record_Controller): Removed. |
| (Freeze_Type): Remove the freezing of record controllers. Freezing of |
| class-wide types now requires additional processing. Create |
| finalization collections for access-to-controlled types. |
| (Increment_Counter): New routine. |
| (Make_Counter): New routine. |
| (Make_Eq_If): Remove the mention of Name_uController. |
| (Make_Predefined_Primitive_Specs): There is no longer need to skip |
| types coming from System.Finalization_Root. |
| (Predef_Deep_Spec): Reimplemented to reflect the new parameter profiles. |
| (Predefined_Primitive_Bodies): There is no longer need to skip types |
| coming from System.Finalization_Root. |
| (Stream_Operation_OK): Do not generate stream routines for |
| type Ada.Finalization.Heap_Management.Finalization_Collection. |
| * exp_ch3.ads: Alphabetize subprograms. |
| * exp_ch4.adb: Remove with and use clause for Sem_Ch8. |
| Add with and use clause for Lib. |
| (Complete_Coextension_Finalization): Removed. |
| (Complete_Controlled_Allocation): New routine. Create a finalization |
| collection for anonymous access-to-controlled types. Create a custom |
| Allocate which interfaces with the back end and the machinery in |
| Heap_Management. |
| (Expand_Allocator_Expression): Add necessary calls to |
| Complete_Controlled_Allocation. Remove the retrieval of finalization |
| lists. Update the calls to Make_Adjust_Call. Generate a call to |
| Ada.Finalization.Heap_Management.Set_Finalize_Address_Ptr to decorate |
| the associated collection. |
| (Expand_N_Allocator): Remove the processing for dynamic coextensions. |
| Code clean up. Remove the retrieval of finalization lists and |
| attachment levels. |
| Update the call to Make_Init_Call. Generate a call to |
| Ada.Finalization.Heap_Management.Set_Finalize_Address_Ptr to decorate |
| the associated collection. |
| (Get_Allocator_Final_List): Removed. Finalization lists are not |
| available. |
| (Suitable_Element): Remove the mention of Name_uController. |
| * exp_ch5.adb: Remove with and use clauses for Ttypes and Uintp. |
| (Make_Tag_Ctrl_Assignment): Rewritten to simply do a finalization of |
| the left hand side, carry out the assignment and adjust the left hand |
| side. |
| * exp_ch6.adb (Add_Final_List_Actual_To_Build_In_Place_Call): Removed. |
| (Add_Collection_Actual_To_Build_In_Place_Call): New routine. |
| (BIP_Formal_Suffix): Rename BIP_Final_List and BIPfinallist to |
| BIP_Collection and BIPcollection. |
| (Build_Heap_Allocator): New routine used to allocate the return object |
| of a build-in-place function onto a collection. |
| (Expand_Ctrl_Function_Call): Moved from Exp_Ch7. |
| (Expand_Call): Do not replace direct calls to Deep routines with their |
| aliases. |
| (Expand_N_Extended_Return_Statement): Give all variables shorter names |
| and update their occurrences. Add a special return flag to monitor the |
| [ab]normal execution of the function. The flag is set right before the |
| return statement. |
| Rewrite the mechanism used to allocate a build-in-place return object |
| on the heap or on a storage pool. |
| (Is_Direct_Deep_Call): New routine. |
| (Make_Build_In_Place_Call_In_Allocator): Add a collection to a |
| build-in-place function call instead of a final list. Build a call to |
| Set_Finalize_Address_Ptr to decorate the associated collection. |
| (Make_Build_In_Place_Call_In_Anonymous_Context): Create a temporary in |
| order to name the build-in-place function call's result for later |
| finalization. Add a collection to a build-in-place function call |
| instead of a final list. |
| (Make_Build_In_Place_Call_In_Assignment): Add a collection to a |
| build-in-place function call instead of a final list. Remove the code |
| which moves one final list and transforms it into the actual in a |
| nested build-in-place call. |
| (Make_Build_In_Place_Call_In_Object_Declaration): Add a collection to a |
| build-in-place function call instead of a final list. |
| (Move_Final_List): Removed. |
| (Needs_BIP_Collection): New routine. |
| (Needs_BIP_Final_List): Removed. |
| * exp_ch6.ads: Replace BIP_Final_List with BIP_Collection in |
| enumeration type BIP_Formal_Kind. |
| Update the related comment. |
| (Needs_BIP_Collection): New routine. |
| (Needs_BIP_Final_List): Removed. |
| * exp_ch7.adb: Add with and use clauses for Elists, Exp_Ch6, Stringt |
| and Ttypes. Remove with and use clauses for Sem_Type. Alphabetize the |
| majority of subprograms in this unit. Add Name_Finalize_Address to |
| array Name_Of and TSS_Finalize_Address to array Deep_Name_Of. |
| (Build_Adjust_Or_Finalize_Statements): Create the adjust or finalization |
| statements for an array type. |
| (Build_Adjust_Statements): Create the adjust statements for a record |
| type. |
| (Build_Cleanup_Statements): New routine. A procedure which given any |
| construct containing asynchronous calls, references to _master, or is a |
| task body, a task allocation or a protected body produces the necessary |
| runtime calls to clean up these constructs. |
| (Build_Exception_Handler): New routine. |
| (Build_Final_List): Removed. |
| (Build_Finalization_Collection): New routine. A core procedure which |
| creates a collection to service heap allocated controlled objects |
| associated with an access-to-controlled type. |
| (Build_Finalize_Statements): Create the finalization statements for a |
| record types. |
| (Build_Finalizer): New routine. A core procedure which given any |
| construct with declarations and/or statements detects all objects which |
| need any type of clean up (controlled objects, protected objects) and |
| generates all necessary code to clean up the said objects in the proper |
| order. |
| (Build_Finalizer_Call): New routine. |
| (Build_Initialize_Statements): Create the initialization statements for |
| an array type. The generated routine contains code to finalize partially |
| initialized arrays. |
| (Build_Object_Declarations): New routine. |
| (Build_Raise_Statement): New routine. |
| (Clean_Simple_Protected_Objects): Removed. |
| (Controller_Component): Removed. |
| (Enclosing_Function): New routine. |
| (Expand_Cleanup_Actions): Create a finalizer for a construct which has |
| either declarations or statements or both. |
| (Expand_N_Package_Body): Create a finalizer for a non-generic package. |
| (Expand_N_Package_Declaration): Create a finalizer for a non-generic |
| package. |
| (Find_Final_List): Removed. |
| (Global_Flist_Ref): Removed. |
| (In_Finalization_Root): Removed. |
| (Insert_Actions_In_Scope_Around): Determine the range of the transient |
| scope in terms of tree nodes. Process all transient variables within |
| that range. |
| (Make_Adjust_Call): Rewritten. There is no longer an attach call |
| generated after the adjust. |
| (Make_Attach_Call): Removed. |
| (Make_Call): New routine. |
| (Make_Clean): Removed. |
| (Make_Deep_Array_Body): Rewritten to simply invoke the appropriate |
| build routines. |
| (Make_Deep_Proc): Rewritten to generate the new profile signature used |
| in Deep routines. |
| (Make_Deep_Record_Body): Rewritten to simply invoke the appropriate |
| build routines. |
| (Make_Final_Call): Modified to simply create a call to either |
| Deep_Finalize or Finalize. |
| (Make_Finalize_Address_Body): New routine. |
| (Make_Finalize_Address_Stmts): New routine. A function which produces |
| TSS primitive Finalize_Address used in conjunction with heap allocated |
| controlled objects. |
| (Make_Handler_For_Ctrl_Operation): Add specialized code for .NET/JVM. |
| (Make_Init_Call): Rewritten. There is no longer an attach call |
| generated after initialization. |
| (Make_Local_Deep_Finalize): New routine. |
| (Make_Set_Finalize_Address_Ptr_Call): New routine. |
| (Make_Transient_Block): Remove the finalization list retrieval and |
| manipulation. |
| (Needs_Finalization): Moved to Exp_Util. |
| (Parent_Field_Type): New routine. |
| (Preprocess_Components): New routine. |
| (Process_Transient_Objects): New routine. |
| (Wrap_HSS_In_Block): New routine. |
| (Wrap_Transient_Declaration): Remove finalization list management and |
| controller insertion. |
| (Wrap_Transient_Expression): Code reformatting. |
| (Wrap_Transient_Statement): Code reformatting. |
| * exp_ch7.ads (Build_Final_List): Removed. |
| (Build_Finalization_Collection): New routine. |
| (Build_Raise_Statement): New routine. |
| (Controller_Component): Removed. |
| (Expand_Ctrl_Function_Call): Moved to Exp_Ch6. |
| (Find_Final_List): Removed. |
| (In_Finalization_Root): Removed. |
| (Is_Simple_Protected_Type): Update related comment. |
| (Make_Adjust_Call): New parameter profile and associated comments. |
| (Make_Attach_Call): Removed. |
| (Make_Final_Call): New parameter profile and associated comments. |
| (Make_Finalize_Address_Body): New routine. |
| (Make_Init_Call): New parameter profile and associated comments. |
| (Make_Local_Deep_Finalize): New routine. |
| (Make_Set_Finalize_Address_Ptr_Call): New routine. |
| (Needs_Finalization): Moved to Exp_Util. |
| * exp_ch9.adb (Add_Object_Pointer): Code reformatting. |
| (Expand_N_Protected_Body): Remove the handling of finalization lists. |
| (Find_Protection_Type): Moved to Exp_Util. |
| * exp_disp.adb: Remove with and use clauses for Exp_Ch7. |
| (Make_DT): Update sequence of dispatch table initialization. Remove the |
| initialization of field RC_Offset. Add initialization of field Needs_ |
| Finalization. |
| * exp_intr.adb (Expand_Unc_Deallocation): Code reformatting. |
| Reimplement how an object is first finalized, then deallocated. |
| * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): |
| Code reformatting. |
| * exp_tss.ads: Add special suffix for TSS primitive Finalize_Address. |
| Register TSS_Finalize_Address with type TSS_Names. |
| * exp_util.adb (Build_Allocate_Deallocate_Proc): New routine. This core |
| procedure provides the interface between an allocation / deallocation |
| and the support machinery in Ada.Finalization.Heap_Management. |
| (Find_Init_Call): Code reformatting. |
| (Find_Init_Call_In_List): Code reformatting. |
| (Find_Protection_Type): Moved from Exp_Ch9. |
| (Find_Prim_Op): Reimplement to add preference of recovered primitive. |
| (Has_Controlled_Coextensions): Removed. |
| (Has_Controlled_Objects): New routine. |
| (In_Library_Level_Package_Body): New routine. |
| (Insert_Action_After): New routine. |
| (Is_Finalizable_Transient): New routine. This predicate determines |
| whether an object declaration is one of the many variants of controlled |
| transients. |
| (Is_Null_Access_BIP_Func_Call): New routine. |
| (Is_Non_BIP_Func_Call): New routine. |
| (Is_Related_To_Func_Return): New routine. |
| (Needs_Finalization): Moved from Exp_Ch7. |
| * exp_util.ads (Build_Allocate_Deallocate_Proc): New routine. |
| (Find_Protection_Type): Moved from Exp_Ch9. |
| (Has_Controlled_Coextensions): Removed. |
| (Has_Controlled_Objects): New routine. |
| (In_Library_Level_Package_Body): New routine. |
| (Insert_Action_After): New routine. |
| (Is_Finalizable_Transient): New routine. |
| (Is_Null_Access_BIP_Func_Call): New routine. |
| (Is_Non_BIP_Func_Call): New routine. |
| (Is_Related_To_Func_Return): New routine. |
| (Needs_Finalization): Moved from Exp_ch7. |
| * expander.adb (Expand): Add a case for N_Free_Statement. |
| * freeze.adb (Freeze_All): Replace the generation of a finalization |
| list with a collection for access-to-controlled types. |
| (Freeze_Entity): Code reformatting. |
| (Freeze_Record_Type): Remove the freezing of a record controller |
| component. |
| (Freeze_Subprogram): Code reformatting. |
| * inline.adb (Cleanup_Scopes): Remove the reset of the scope |
| finalization list. |
| * lib-writ.adb (Write_Unit_Information): Output "PF" when a package |
| has a library-level finalizer. |
| * lib-writ.ads: Add "PF" to the sequence of unit attributes. |
| * a-filico.ads, a-filico.adb, s-finimp.ads, s-finimp.adb: Removed. |
| * Makefile.rtl: Remove a-filico and s-finimp from the list of object |
| files. Add a-fihema to the list of object files. |
| * par-ch4.adb: |
| Alphabetize the associations in type Is_Parameterless_Attribute. |
| * rtsfind.ads: Ada.Finalization_List.Controller and |
| System.Finalization_Implementation are no longer a GNAT unit. |
| Update the range of type Ada_Finalization_Child. Remove the following |
| recoverable entities: |
| |
| RE_Attach_To_Final_List |
| RE_Deep_Tag_Attach |
| RE_Finalize_List |
| RE_Finalize_One |
| RE_Finalizable_Ptr_Ptr |
| RE_Global_Final_List |
| RE_Limited_Record_Controller |
| RE_List_Controller |
| RE_Move_Final_List |
| RE_Record_Controller |
| RE_Simple_List_Controller |
| |
| Add the following recoverable entities: |
| |
| RE_Add_Offset_To_Address |
| RE_Allocate |
| RE_Base_Pool |
| RE_Deallocate |
| RE_Exception_Identity |
| RE_Finalization_Collection |
| RE_Finalization_Collection_Ptr |
| RE_Needs_Finalization |
| RE_Save_Library_Occurrence |
| RE_Set_Finalize_Address_Ptr |
| RE_Set_Storage_Pool_Ptr |
| RE_Storage_Count |
| * sem_aggr.adb (Resolve_Record_Aggregate): Remove mention of |
| Name_uController. |
| * sem_aux.adb (First_Discriminant): Remove mention of Name_uController. |
| (First_Stored_Discriminant): Remove the mention of Name_uController. |
| * sem_aux.ads: Comment reformatting. |
| * sem_ch10.adb (Build_Chain): Signal the class-wide creation machinery |
| to redecorate an already existing class-wide type. |
| (Decorate_Tagged_Type): New parameter profile and associated comment. |
| Create a "shadow class-wide type" for a shadow entity. |
| * sem_ch11.adb (Analyze_Exception_Handlers): Remove the dubious setting |
| of the final chain along with the associated comment. |
| * sem_ch3.adb (Access_Type_Declaration): Add new local variable |
| Full_Desig and set it to the full view of the designated type. |
| Initialize the finalization collection to empty. |
| (Build_Derived_Record_Type): Alphabetize local variables. Code |
| reformatting. |
| (Collect_Fixed_Components): Remove the mention of Name_uController. |
| (Create_Constrained_Components): Remove the mention of Name_uController. |
| (Make_Class_Wide_Type): Add specialized code to redecorate an existing |
| class-wide type of a shadow entity. |
| (Process_Full_View): Update the machinery which marks type |
| Limited_Controlled's entity as limited. |
| * sem_ch4.adb (Analyze_One_Call): Code reformatting. |
| * sem_ch6.adb (Create_Extra_Formals): Do not generate a finalization |
| list, instead make a collection build-in-place formal. |
| * sem_ch8.adb (Analyze_Object_Renaming): Look at the available view of |
| a designated type in order to establish a match between the renaming |
| and the renamed entity. |
| (Find_Selected_Component): Add guard to prevent spurious exceptions |
| from being raised on .NET/JVM. |
| * sem_disp.adb (Check_Dispatching_Operation): Include Finalize_Address |
| to the list of primitive that need special processing. Update arrays |
| C_Names and D_Names. |
| (Replace_Types): Handle class-wide types. |
| * sem_elab.adb (Check_A_Call): Since Deep_Initialize now has a |
| different parameter profile, look at the first formal. |
| * sem_prag.adb: Remove with and use clauses for Exp_Ch7. Add with and |
| use clauses for Exp_Util. |
| * sem_res.adb: Remove with and use clauses for Elists. |
| (Propagate_Coextensions): Removed. |
| (Resolve_Allocator): Do not propagate the list of coextensions from one |
| allocator to another. |
| * sem_util.adb (Build_Actual_Subtype_Of_Component): Rename variable |
| Deaccessed_T to Desig_Typ. |
| (Enter_Name): Remove the mention of Name_uController. |
| (Gather_Components): Remove the mention of Name_uController. |
| (Incomplete_Or_Private_View): New routine. |
| (Is_Coextension_Root): Removed. |
| (Is_Fully_Initialized_Type): Remove the mention of Name_uController. |
| * sem_util.ads (Incomplete_Or_Private_View): New routine. |
| (Is_Coextension_Root): Removed. |
| * s-finroo.ads: Remove with clause for Ada.Unchecked_Conversion. |
| Controlled types are now derived from a null tagged record. Remove |
| types Finalizable_Ptr, Finalizable and Empty_Root_Controlled. |
| * sinfo.adb (Coextensions): Removed. |
| (Set_Coextensions): Removed. |
| * sinfo.ads: Remove Coextensions from the explanation of node fields |
| and its uses in nodes. |
| Update the field usage of N_Allocator. |
| (Coextensions): Removed along with its pragma Inline. |
| (Set_Coextensions): Removed along with its pragma Inline. |
| * snames.ads-tmpl: Remove names |
| |
| Name_uClean |
| Name_uController |
| Name_uFinal_List |
| Name_uLocal_Final_List |
| Name_Finalization_Root |
| Name_Next |
| Name_Prev |
| |
| Add names |
| |
| Name_uFinalizer |
| Name_Finalize_Address |
| * s-pooglo.adb (Allocate): Add overriding indicator. |
| (Deallocate): Add overriding indicator. |
| (Storage_Size): Add overriding indicator. |
| * s-soflin.adb (Adafinal_NT): Invoke Finalize_Library_Objects rather |
| than Finalize_Global_List. |
| (Null_Finalize_Global_List): Removed. |
| (Save_Library_Occurrence): New routine. |
| * s-soflin.ads: Remove variable Finalize_Global_List along with its |
| initialization. Add variable Finalize_Library_Objects along with its |
| pragma Export. Add variables Library_Exception and |
| Library_Exception_Set along with their pragma Export. |
| (Null_Finalize_Global_List): Removed. |
| (Save_Library_Occurrence): New routine. |
| * s-tassta.adb (Finalize_Global_Tasks): Call Finalize_Library_Objects |
| rather than Finalize_Global_List. |
| * tbuild.adb (Unchecked_Convert_To): Capture and set the parent field |
| of the constructed node. |
| |
| 2011-08-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * link.c: Include "auto-host.h" before system headers. |
| |
| 2011-08-03 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): Add to table Library_Projs only library projects |
| that are not extended. Do not check if a library project that is |
| extended should be regenerated. Do not add to table Library_Paths the |
| libraries that are in extended projects. Link only with libraries that |
| are in libray projects that are not extended. |
| * prj-nmsc.adb (Check_Library_Attributes): Do not reset flag Library |
| for a library project that is extended. |
| |
| 2011-08-03 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch6.adb (Find_Corresponding_Spec): When in an instance, skip |
| conforming subprogram renamings that appear to be completions if they |
| are not fully conformant. |
| Such renamings are homographs but not completions. |
| * sem_type.adb (Disambiguate): Handle disambiguation of overloaded |
| names in a subprogram renaming that appears in an instance. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_util.adb (Expand_Subtype_From_Expr): if the type is limited but |
| not immutably limited, build actual subtype from expression to provide |
| proper bounds to caller. |
| |
| 2011-08-03 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch8.adb: Minor comment correction. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_strm.adb (Build_Array_Input_Function): In Ada 2005 mode, when |
| returning a limited array, use an extended return statement. |
| |
| 2011-08-03 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Initialize): If --subdirs= is used, but no project file is |
| specified, attempt to create the specify subdir if it does not already |
| exist and use it as the object directory as if -D had been specified. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-tpopsp-vms.adb: New file. |
| * s-taprop-vms.adb: Put back ATCB_Key, since needed by this file on VMS. |
| * gcc-interfaces/Makefile.in: Use s-taprop-vms.adb on VMS. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, makeutl.ads, clean.adb (Makeutl.Queue): new |
| package. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * cstand.adb (Create_Standard): select Universal_Integer as an ALFA type |
| * sem_ch3.adb (Array_Type_Declaration): detect array types in ALFA |
| * sem_util.adb, sem_util.ads (Has_Static_Array_Bounds): new function to |
| detect that an array has static bounds. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_dist.adb: Minor reformatting. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-vms.adb |
| (ATCB_Key): Removed, not always used. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * gnatcmd.adb, make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads, |
| clean.adb, prj-conf.adb, prj-env.adb, prj-env.ads (Makeutl): remove |
| most remaining global variables. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * gnatcmd.adb, prj-proc.adb, mlib-prj.adb, prj.adb, makeutl.ads, |
| prj-util.adb, prj-util.ads, prj-conf.adb, prj-env.adb: Minor |
| reformatting. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_util.adb (Is_VM_By_Copy_Actual): Include N_Slide nodes as actuals |
| that must be passed by copy in VM targets. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj.ads, prj-nmsc.adb (Files_Htable): removed this htable, which |
| duplicates a similar htable now in the project tree. |
| |
| 2011-08-03 Claire Dross <dross@adacore.com> |
| |
| * a-cfdlli.adb, a-cfhama.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb, |
| a-cofove.adb ("=", Length, Is_Empty, Clear, Assign, Copy, Element, |
| Replace_Element, Query_Element, Update_Element, Move, Insert, Prepend, |
| Append, Delete, Delete_First, Delete_Last, Reverse_Element, Swap, |
| Splice, First, First_Element, Last, Last_Element, Next, Previous, Find, |
| Reverse_Find, Contains, Has_Element, Iterate, Reverse_Iterate, Capacity, |
| Reserve_Length, Length, Strict_Equal, Left, Right): Data-structure |
| update. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-taprop-posix.adb, s-taprop-linux.adb, s-taprop-tru64.adb |
| (ATCB_Key): Removed, not always used. |
| * s-tpopsp-posix.adb, s-tpopsp-posix-foreign.adb (ATCB_Key): Moved from |
| s-taprop-posix.adb. |
| * s-tpopsp-tls.adb: New file. |
| * gcc-interface/Makefile.in: Use TLS implementation of s-tpopsp.adb on |
| x86/x64/ia64/powerpc/sparc Linux. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * system-aix.ads, system-aix64.ads: Set ZCX_By_Default to True. |
| * gcc-interface/Makefile.in: Switch to ZCX by default on AIX ports. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * rtsfind.ads, exp_dist.adb, exp_dist.ads |
| (Build_From_Any_Call, Build_To_Any_Call, Build_TypeCode_Call): |
| Fix type selection for mapping integer types to PolyORB types. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * sem_ch7.adb: Minor comment clarification. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): If we get |
| an error analyzing a choice, skip further processing. Further |
| processing could cause a crash or cascade errors. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, mlib-prj.adb, |
| prj.adb, prj.ads, makeutl.adb, makeutl.ads, clean.adb, prj-nmsc.adb, |
| prj-util.adb, prj-util.ads, prj-conf.adb, prj-conf.ads, prj-env.adb, |
| prj-env.ads (Shared_Project_Tree_Data): new type |
| An aggregate project and its aggregated trees need to share the common |
| data structures used for lists of strings, packages,... This makes the |
| code simpler since otherwise we have to pass the root tree (also used |
| for the configuration file data) in addition to the current project |
| tree. This also avoids ambiguities as to which tree should be used. |
| And finally this saves a bit of memory. |
| (For_Every_Project_Imported): new parameter Tree. |
| Since aggregated projects are using a different tree, we need to let |
| the caller know which tree to use to manipulate the returned project. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * prj-proc.adb, exp_util.ads, exp_ch9.adb, make.adb, prj-ext.adb, |
| prj-ext.ads, alfa.ads, sem_ch4.adb, makeutl.adb, makeutl.ads, |
| lib-xref-alfa.adb, sem_cat.adb, exp_dist.adb, get_alfa.adb, |
| prj-env.adb, prj-env.ads, prj-tree.adb, alfa.ads: Minor reformatting. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_util.adb, sem_aux.adb, exp_util.ads, sem_aux.ads: |
| Move routine Is_VM_By_Copy_Actual from sem_aux to exp_util. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * sem_ch8.adb (Is_Primitive_Operator_In_Use): Always check In_Use on |
| the Base_Type. |
| |
| 2011-08-03 Joel Brobecker <brobecker@adacore.com> |
| |
| * g-sha256.ads, g-sha512.ads, g-sha1.ads, g-sha224.ads, g-sha384.ads, |
| g-sehash.ads: Fix typo. Update header. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch6.adb (Expand_Actuals): Remove Ada_2005 guard on build-in-place |
| expansion. |
| |
| 2011-08-03 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Overloaded_Selected_Component): Consider |
| prefixes of private types along with records, since the selector may be |
| a discriminant. |
| * sem_res.adb (Resolve_Selected_Component): Consider prefixes of |
| private types along with records, since the selector may be a |
| discriminant. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-pp.adb (Pretty_Print): Remove trailing blank line. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * sem_aux.adb (Is_VM_By_Copy_Actual): Fix wrong use of |
| Tagged_Type_Expansion. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb (Resolve_Op_Concat_Arg): Do not issue a SPARK |
| violation when the argument of concatenation is the name of a |
| constant. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj-ext.adb, prj-ext.ads, prj-env.adb, prj-env.ads, |
| prj-tree.adb, prj-tree.ads (Initialize_And_Copy, Copy): new subprograms |
| (Process_Declarative_Items): new parameter Child_Env. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * alfa.ads: Update format of ALFA section in ALI file in order to |
| add a mapping from bodies to specs when both are present. |
| (ALFA_Scope_Record): Add components for spec file/scope. |
| * get_alfa.adb (Get_ALFA): Read the new file/scope for spec when |
| present. |
| * lib-xref-alfa.adb (Collect_ALFA): After all scopes have been |
| collected, fill in the spec information when relevant. |
| * put_alfa.adb (Put_ALFA): Write the new file/scope for spec when |
| present. |
| |
| 2011-08-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * inline.adb (Add_Inlined_Subprogram): Do not consider the enclosing |
| code unit to decide whether to add internally generated subprograms. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * sem_aux.ads, sem_aux.adb (Is_VM_By_Copy_Actual): New subprogram. |
| * exp_ch9.adb (Build_Simple_Entry_Call): Handle actuals that must |
| be handled by copy in VM targets. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * make.adb, makeutl.adb, makeutl.ads (Make.Switches_Of): Share |
| code with Makeutl.Get_Switches. |
| * prj-tree.adb: Update comment. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_cat.adb (Validate_RCI_Subprogram_Declaration): Reject a remote |
| subprogram with a limited formal that does not support external |
| streaming. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * get_alfa.adb (Get_ALFA): add missing Skip_Spaces at start of |
| continuation line |
| * lib-xref-alfa.adb (Add_ALFA_File): split removal of scopes that are |
| not from current unit in two phases, because it is not possible to |
| change the table while iterating over its content. |
| * put_alfa.adb (Put_ALFA): reset current file/scope at each new entity |
| |
| 2011-08-03 Sergey Rybin <rybin@adacore.com> |
| |
| * vms_data.ads: Add qualifier for gnatmetric --no-static-loop option |
| * gnat_ugn.texi: Update description of complexity metrics (gnatmetric) |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Op_Concat_Arg): if the argument is an aggregate |
| and the component type is composite, this is ambiguous for predefined |
| concatenation, but if the node is not overloaded and the entity is a use |
| -defined function its profile can be used to resolve that aggregate. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb: Minor code cleanup. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_dist.adb: Do not generate distribution stubs if serious errors |
| have been diagnosed. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb (Try_Primitive_Operation): when checking the validity of |
| the first formal of a primitive operation, go to the base type to |
| handle properly an access to a derived type with constrained |
| discriminants. |
| * sem_type.adb (Disambiguate): an immediately visible operator hides a |
| user-defined function that is only use-visible. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb, sem_ch3.adb, lib.ads, gnatcmd.adb, prj-proc.adb, |
| make.adb, lib-writ.adb, prj-part.adb, prj-part.ads, prj-ext.adb, |
| fname-uf.adb, prj-ext.ads, prj.adb, prj.ads, sem_attr.adb, alfa.adb, |
| prj-makr.adb, errout.adb, makeutl.adb, makeutl.ads, restrict.ads, |
| sem_ch6.adb, g-pehage.adb, clean.adb, put_alfa.adb, lib-xref-alfa.adb, |
| prj-nmsc.adb, prj-nmsc.ads, sem_ch8.adb, prj-pars.ads, exp_aggr.adb, |
| prj-attr.ads, sem_ch13.adb, get_alfa.adb, prj-env.adb, prj-env.ads, |
| alfa_test.adb, prj-tree.adb, prj-tree.ads, einfo.ads: Minor reformatting |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * repinfo.adb (List_Mechanism): Add handling of |
| Convention_Ada_Pass_By_XXX. |
| * sem_mech.adb (Set_Mechanism): Ditto. |
| * sem_prag.adb (Process_Convention): Add entries for |
| Convention_Ada_Pass_By_XXX. |
| * snames.adb-tmpl, snames.ads-tmpl: Ditto. |
| |
| 2011-08-03 Pascal Obry <obry@adacore.com> |
| |
| * makeutl.adb: Minor reformatting. |
| |
| 2011-08-03 Vincent Celier <celier@adacore.com> |
| |
| * fname-uf.adb |
| (Get_File_Name) If the file cannot be found when there are no config |
| pragmas file and May_Fail is True, return No_File instead of the file |
| name, to be consistent. |
| |
| 2011-08-03 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_is_executable_file_attr): Avoid access |
| to null pointer. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch13.adb |
| (Same_Representation): In VM targets the representation of arrays with |
| aliased components differs from arrays with non-aliased components. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj-attr.adb, prj-attr.ads (Get_Attribute_Index): do |
| not systematically lower case attribute indexes that contain no "." |
| Fix definition of several Naming attributes, which take |
| a unit name as index and therefore should be case insensitive. |
| Minor refactoring (reduce length of variable names). |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * makeutl.adb, makeutl.ads (Get_Switches): new subprogram. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb, |
| prj-part.ads, switch-m.adb, switch-m.ads, prj-makr.adb, clean.adb, |
| prj-pars.adb, prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb, |
| prj-tree.ads (Prj.Tree.Environment): new type. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj.ads, makeutl.adb, makeutl.ads, prj-conf.adb, |
| prj-tree.adb, prj-tree.ads (Environment): new type. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-tree.ads: Remove unused variable. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * restrict.adb (Restriction_Msg): set "SPARK" all in upper case for |
| issuing messages related to SPARK restriction violation. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb: guard against error nodes in return statements. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * errout.adb (Error_Msg_Internal): the main unit has not been read yet, |
| a warning can only appear on a configuration file, so emit warning |
| without further checks. |
| |
| 2011-08-03 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-interr.ads: add overriding keyword. |
| |
| 2011-08-03 Geert Bosch <bosch@adacore.com> |
| |
| * exp_attr.adb: Fix minor typo. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch4.adb: improve error recovery. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-part.adb, prj-part.ads, prj-makr.adb, prj-pars.adb, prj-conf.adb, |
| prj-env.adb (Prj.Part.Parse): change parameter Always_Errout_Finalize |
| to Errout_Handling. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-dect.adb (Parse_Attribute_Declaration): make sure we can use |
| "external" as an attribute name in aggregate projects. |
| |
| 2011-08-03 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-taprop-vxworks.adb: (Create_Task, Initialize): Ada 2012 pragma CPU |
| uses CPU numbers starting 1, while VxWorks uses CPU numbers starting |
| from 0, so we need to adjust. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj-ext.adb, prj-ext.ads, makeutl.adb, prj-tree.adb, |
| prj-tree.ads, gnatcmd.adb, clean.adb (External_References): new type. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch6.adb (New_Overloaded_Entity): only issue error for SPARK |
| restriction on overloaded entity if the entity is not an operator. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch7.adb, sem_res.adb, sem_attr.adb, restrict.adb, |
| restrict.ads: Rename remaining Check_Formal_Restriction* into |
| Check_SPARK_Restriction*. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-proc.adb, prj-part.adb, prj.adb, prj.ads, prj-nmsc.adb, |
| prj-nmsc.ads, prj-err.adb (Project_Data): now discriminated on its |
| qualifier. |
| (Project_Empty): removed |
| (Empty_Project): new parameter Qualifier |
| This is used to have fields specific to aggregate projects, cleaner |
| New field to store the list of aggregated projects. |
| (Check_Aggregate_Project): removed |
| (Process_Aggregated_Projects, Free): new subprograms. |
| |
| 2011-08-03 Olivier Hainque <hainque@adacore.com> |
| |
| * tracebak.c (STOP_FRAME ppc AIX): Stop at null return address as well. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Object_Renaming): if the renamed object is an |
| explicit dereference of an unconstrained type, create a constrained |
| subtype for it, as is done for function calls that return an |
| unconstrained type. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * g-pehage.adb (Finalize): Avoid possible double-free. |
| |
| 2011-08-03 Steve Baird <baird@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference): Don't expand |
| Elab_Spec/Body attrs in CodePeer_Mode. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_aggr.adb (Flatten): Convert to positional form aggregates whose |
| low bound is not known at compile time but they have no others choice. |
| Done because in this case the bounds can be obtained directly from the |
| aggregate. |
| |
| 2011-08-03 Ed Falis <falis@adacore.com> |
| |
| * s-tasinf-vxworks.ads: Update comment to reflect 0 indexing of CPUs |
| on VxWorks SMP. Remove unusable constant ANY_CPU. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * gnatcmd.adb, make.adb, prj-part.adb, prj-part.ads, prj-makr.adb, |
| clean.adb, prj-nmsc.adb, prj-pars.adb, prj-conf.adb, prj-env.adb, |
| prj-env.ads (Prj.Env.Initialize_Default_Project_Path, |
| Prj.Env.Initialize_Empty): new subprograms |
| (Get_Env, Find_Project): remove parameter Target_Name. |
| |
| 2011-08-03 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch3.adb (Build_Derived_Record_Type): Test the Derive_Subps formal |
| as a condition for the delayed call to Derived_Subprograms done for the |
| case of the rewriting of a derived type that constrains the |
| discriminants of its parent type. |
| Avoids redundant subprogram derivations for private subtype derivations. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_aggr.adb (Init_Hidden_Discriminants): New subprogram of |
| Build_Record_Aggr_Code. |
| (Build_Record_Aggr_Code): Add missing support to initialize hidden |
| discriminants in extension aggregates. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-pp.adb (Print): also output project qualifiers, since in |
| particular "aggregate" is mandatory in an aggregate project. |
| |
| 2011-08-03 Emmanuel Briot <briot@adacore.com> |
| |
| * prj-part.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb: |
| (Debug_Output): new function. |
| |
| 2011-08-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gnat_ugn.texi: Document -Wstack-usage. |
| * gcc-interface/misc.c (enumerate_modes): Add guard for ghost FP modes. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_prag.adb Issue an error (not a warning) when a C++ type does not |
| have keyword LIMITED. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * alfa.adb, alfa.ads, alfa_test.adb: New files. |
| * ali.adb (Known_ALI_Lines): add 'C' lines (SCO) and 'F' lines (ALFA) |
| (Scan_ALI): do not issue a fatal error if parsing known lines after Xref |
| section (does not happen in compiler, only if code directly calls |
| Scan_ALI). |
| * get_alfa.adb, get_alfa.ads: New files. |
| * lib-writ.adb, lib-writ.ads (Write_ALI): output ALFA information if |
| needed. |
| * lib-xref-alfa.adb: New file. |
| * lib-xref.adb, lib-xref.ads |
| (Xref_Entry): redefine information needed in cross-references for ALFA. |
| Push ALFA treatments in separated local package. |
| (Enclosing_Subpragram_Or_Package): treat specially subprogram |
| identifiers. Return entity of package body instead of spec. Return |
| Empty for a scope with no location. |
| (Generate_Reference): adapt to new components for ALFA information. |
| Remove the need for D references on definitions. |
| (Is_Local_Reference): moved to ALFA local package |
| (Output_References): extract subfunction as Extract_Source_Name |
| (Output_Local_References): remove procedure, replaced by filtering of |
| cross-references in package ALFA and printing in Put_ALFA. |
| (Write_Entity_Name): remove procedure |
| * lib.adb, lib.ads (Extract_Source_Name): extract here function to |
| print exact name of entity as it appears in source file |
| (Unit_Ref_Table): make type public for use in Lib.Xref.ALFA |
| * put_alfa.adb, put_alfa.ads: New files. |
| * xref_lib.adb (Search_Xref): protect read of cross-references against |
| reading other sections of the ALI file, in gnatxref |
| (Search): protect read of cross-references against reading other |
| sections of the ALI file, in gnatfind. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting. |
| |
| 2011-08-03 Jose Ruiz <ruiz@adacore.com> |
| |
| * s-inmaop-vxworks.adb (Setup_Interrupt_Mask): Do nothing instead of |
| raising an exception. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Set_String_Literal_Subtype): if index type is an integer |
| type, always use 1 as the lower bound or string, even if lower bound of |
| context is not static, to handle properly null strings in a non-static |
| context. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * sem_prag.adb (Resolve_Aggregate): An array aggregate with 'others' is |
| always legal on the right-hand side of an assignment statement; there |
| is always an applicable index constraint in this case. Therefore, the |
| check for Pkind = N_Assignment_Statement is now unconditional -- it |
| doesn't depend on whether Is_Constrained (Typ). |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch5.adb, sem_prag.adb, exp_ch4.adb: Minor reformatting. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Build_Itype_Reference): do not create an itype reference |
| for an itype created within a generic unit. |
| |
| 2011-08-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gnat_ugn.texi (Switches for gcc): Make it clearer that -fno-inline |
| suppresses all inlining. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_res.adb, exp_ch13.adb, exp_disp.adb, |
| exp_aggr.adb: Minor reformatting. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Assignment_Statement): Do not force inlining of |
| tagged assignment when discriminant checks are suppressed. This is |
| useless and extremely costly in terms of static stack usage. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * sem_prag.adb (Get_Base_Subprogram): Do not follow Alias for instances |
| of generics, because this leads to the wrong entity in the wrong scope, |
| causing (e.g.) pragma Export_Procedure to get an error if the entity is |
| an instance. |
| (Process_Interface_Name): Follow Alias for instances of generics, to |
| correct for the above change. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Selected_Component): If the discriminant value |
| is an integer literal it is always safe to replace the reference. In |
| addition, if the reference appears in the generated code for an object |
| declaration it is necessary to copy because otherwise the reference |
| might be to the uninitilized value of the discriminant of the object |
| itself. |
| |
| 2011-08-03 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (__gnat_is_executable_file_attr): Fix Win32 circuitry when no |
| ACL used, in this case we want to check for ending .exe, not .exe |
| anywhere in the path. |
| |
| 2011-08-03 Sergey Rybin <rybin@adacore.com> |
| |
| * tree_io.ads (ASIS_Version_Number): Update because of the changes in |
| the tree structure (semantic decoration of references to record |
| discriminants). |
| |
| 2011-08-03 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_aggr.adb (Analyze_Array_Aggregate): When checking the discrete |
| choices of a named array aggregate, bail out when any choices are |
| marked as Errors_Posted. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch13.adb (Expand_N_Freeze_Entity): cleanup determination of scope |
| in which entity is frozen, to handle properly loop variables in |
| iterators. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Set_String_Literal_Subtype): if the lower bound of the |
| subtype is not static, compute the upper bound using attributes, to |
| handle properly index types that are not integer types. |
| |
| 2011-08-03 Bob Duff <duff@adacore.com> |
| |
| * gnat_rm.texi, gnat_ugn.texi: Fix some dangling URLs. |
| Update copyright notice. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Build_Discriminant_Constraints): Only use |
| Original_Discriminant if within an instance. |
| * sem_ch4.adb (Analyze_Selected_Component): Ditto. |
| |
| 2011-08-03 Thomas Quinot <quinot@adacore.com> |
| |
| * einfo.ads: Minor reformatting. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_disp.adb (Check_Premature_Freezing): diagnose the presence of a |
| composite type with an unfrozen subcomponent, in the profile of a |
| primitive operation. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * sem_util.ads, exp_aggr.adb, exp_ch3.adb: Minor reformatting. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): if a constant object of an |
| unconstrained type with discriminants is initialized with an aggregate, |
| use the constrained subtype of the aggregate as the type of the object, |
| because it is immutable, and this allows the back-end to generate no |
| code for the object declaration. |
| |
| 2011-08-03 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb (Optimize_Length_Check): Fix bad handling of case where |
| comparison operand is variable, and turns out to be zero or negative. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_intr.adb |
| (Expand_Dispatching_Constructor_Call): Disable expansion of |
| code required for native targets. Done to avoid generating |
| references to unavailable runtime entities in VM targets. |
| * exp_ch3.adb |
| (Expand_N_Object_Declaration): Add missing support to handle |
| the explicit initialization of class-wide interface objects. |
| Fix documentation. |
| |
| 2011-08-03 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cobove.adb (Merge): Move source onto target, instead of using |
| Assign. |
| |
| 2011-08-03 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cbdlli.adb (Splice): Move source items from first to last. |
| |
| 2011-08-03 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.ads: Add comment. |
| |
| 2011-08-03 Javier Miranda <miranda@adacore.com> |
| |
| * exp_aggr.adb |
| (Expand_Record_Aggregate): In VM targets disable the expansion into |
| assignments of aggregates whose type is not known at compile time. |
| |
| 2011-08-03 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch9.adb (Build_Renamed_Formal_Declaration): common procedure for |
| protected entries and task entries, to build the proper renaming |
| declaration for entry formals, used in debugging. |
| * exp_ch2.adb (Expand_Entry_Parameter): handle task and entry |
| parameters in the same way. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-direct.adb, sinfo.ads, exp_ch9.adb, scng.adb, sem_util.adb, |
| sem_util.ads, restrict.ads, par-prag.adb: Minor reformatting and/or |
| code reorganization. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * debug.adb: Debug flag d.P to suppress length comparison optimization |
| * exp_ch4.adb (Optimize_Length_Comparison): New routine to optimize |
| comparison of Length by comparing First/Last instead. |
| |
| 2011-08-02 Matthew Heaney <heaney@adacore.com> |
| |
| * a-cobove.ads: Code clean up. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * adaint.c (file_names_case_sensitive_cache): New static int. |
| (__gnat_get_file_names_case_sensitive): Cache the return value in |
| file_names_case_sensitive_cache at the first invocation, to avoid |
| multiple calls to getenv. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * sem_ch12.adb (Validate_Derived_Type_Instance): Implement AI05-0218-1. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_prag.adb, sem.ads, |
| sem_util.adb, sem_util.ads, sem_res.adb, sem_ch2.adb, sem_ch4.adb, |
| sem_ch6.adb, sem_ch11.adb: Add semantic flag In_Pre_Post_Expression to |
| indicate that we are in a precondition or postcondition. This is used in |
| Mark_Non_ALFA_Subprogram (renaming of Mark_Non_ALFA_Subprogram_Body) to |
| decide whether to flag the spec or body of the current subprogram as |
| not in ALFA. |
| |
| 2011-08-02 Fabien Chouteau <chouteau@adacore.com> |
| |
| * impunit.adb: Add Ada.Execution_Time.Interrupts in the Ada2012 package |
| list. |
| * a-extiin.ads: New file. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * a-direct.adb (Rename): Implement AI05-0231-1. In particular, Rename |
| now raises Name_Error instead of Use_Error in certain cases. The other |
| parts of this AI were already implemented properly. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * link.c: Only import "auto-host.h" when building the gnattools. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb: Inter-unit inlining does not work for a subprogram |
| which calls a local subprogram, so extract subprogram |
| from Mark_Non_ALFA_Subprogram_Body. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch9.adb |
| (Extract_Dispatching_Call): If the type of the dispatching object is an |
| access type then return an explicit dereference in the Object out-mode |
| parameter. |
| |
| 2011-08-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Subtype_Declaration): Generate range |
| compatibility checks for all indexes of an array subtype, not just the |
| first. Reset Has_Dynamic_Range_Check on the subtype before each |
| potential check to ensure that Insert_Range_Checks will not elide any |
| of the dynamic checks. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * par-prag.ad (Process_Restrictions_Or_Restriction_Warnings): recognize |
| SPARK restriction at parsing time. |
| * scng.adb (Scan): Generate a token Tok_SPARK_Hide for a SPARK HIDE |
| directive only if the SPARK restriction is set for this unit. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb, sem_util.ads, |
| sem_res.adb, sem_ch2.adb, sem_ch4.adb, sem_ch6.adb, |
| sem_ch11.adb: Protect call to Current_Subprogram which might be costly |
| when repeated. Rename Current_Subprogram_Is_Not_In_ALFA into |
| Mark_Non_ALFA_Subprogram_Body. |
| Split body of Mark_Non_ALFA_Subprogram_Body to get body small and |
| inlined. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb: Protect calls to Matching_Static_Array_Bounds which |
| might be costly. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch9.adb, exp_sel.adb, restrict.ads, exp_disp.adb, erroutc.ads, |
| exp_ch3.adb: Minor reformatting. |
| |
| 2011-08-02 Emmanuel Briot <briot@adacore.com> |
| |
| * adaint.c (__gnat_locate_exec_on_path): only returns executable |
| files, not any regular file. |
| (__gnat_locate_file_with_predicate): new subprogram. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sinfo.adb, sinfo.ads: Restrict the use of flags |
| Has_Dynamic_Length_Check and Has_Dynamic_Range_Check to expression |
| nodes, plus N_Subtype_Declaration for the 2nd one. |
| |
| 2011-08-02 Sergey Rybin <rybin@adacore.com> |
| |
| * gnat_rm.texi: Ramification of pragma Eliminate documentation |
| - fix bugs in the description of Source_Trace; |
| - get rid of UNIT_NAME; |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch9.adb |
| (Build_Dispatching_Requeue): Adding support for VM targets |
| since we cannot directly reference the Tag entity. |
| * exp_sel.adb (Build_K): Adding support for VM targets. |
| (Build_S_Assignment): Adding support for VM targets. |
| * exp_disp.adb |
| (Default_Prim_Op_Position): In VM targets do not restrict availability |
| of predefined interface primitives to compiling in Ada 2005 mode. |
| (Is_Predefined_Interface_Primitive): In VM targets this service is not |
| restricted to compiling in Ada 2005 mode. |
| (Make_VM_TSD): Generate code that declares and initializes the OSD |
| record. Needed to support dispatching calls through synchronized |
| interfaces. |
| * exp_ch3.adb |
| (Make_Predefined_Primitive_Specs): Enable generation of predefined |
| primitives associated with synchronized interfaces. |
| (Make_Predefined_Primitive_Bodies): Enable generation of predefined |
| primitives associated with synchronized interfaces. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * par-ch11.adb (P_Handled_Sequence_Of_Statements): mark a sequence of |
| statements hidden in SPARK if preceded by the HIDE directive |
| (Parse_Exception_Handlers): mark each exception handler in a sequence of |
| exception handlers as hidden in SPARK if preceded by the HIDE directive |
| * par-ch6.adb (P_Subprogram): mark a subprogram body hidden in SPARK |
| if starting with the HIDE directive |
| * par-ch7.adb (P_Package): mark a package body hidden in SPARK if |
| starting with the HIDE directive; mark the declarations in a private |
| part as hidden in SPARK if the private part starts with the HIDE |
| directive |
| * restrict.adb, restrict.ads |
| (Set_Hidden_Part_In_SPARK): record a range of slocs as hidden in SPARK |
| (Is_In_Hidden_Part_In_SPARK): new function which returns whether its |
| argument node belongs to a part which is hidden in SPARK |
| (Check_SPARK_Restriction): do not issue violations on nodes in hidden |
| parts in SPARK; protect the possibly costly call to |
| Is_In_Hidden_Part_In_SPARK by a check that the SPARK restriction is on |
| * scans.ads (Token_Type): new value Tok_SPARK_Hide in enumeration |
| * scng.adb (Accumulate_Token_Checksum_GNAT_6_3, |
| Accumulate_Token_Checksum_GNAT_5_03): add case for new token |
| Tok_SPARK_Hide. |
| (Scan): recognize special comment starting with '#' and followed by |
| SPARK keyword "hide" as a HIDE directive. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * types.ads, erroutc.ads: Minor reformatting. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * link.c: Add response file support for cross platforms. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Array_Aggregate): when copying the expression |
| in an association, set parent field of copy before partial analysis. |
| * sem_res.adb (Resolve_Slice): create reference to itype only when |
| expansion is enabled. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * einfo.adb, einfo.ads (Body_Is_In_ALFA, Set_Body_Is_In_ALFA): get/set |
| for new flag denoting which subprogram bodies are in ALFA |
| * restrict.adb, sem_ch7.adb: Update comment |
| * sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, |
| sem_ch9.adb, sem_res.adb: Add calls to |
| Current_Subprogram_Body_Is_Not_In_ALFA on unsupported constructs. |
| * sem_ch6.adb (Analyze_Function_Return): add calls to |
| Current_Subprogram_Body_Is_Not_In_ALFA on return statement in the |
| middle of the body, and extended return. |
| (Check_Missing_Return): add calls to Set_Body_Is_In_ALFA with argument |
| False when missing return. |
| (Analyze_Subprogram_Body_Helper): initialize the flag Body_Is_In_ALFA |
| to True for subprograms whose spec is in ALFA. Remove later on the flag |
| on the entity used for a subprogram body when there exists a separate |
| declaration. |
| * sem_util.adb, sem_util.ads (Current_Subprogram_Body_Is_Not_In_ALFA): |
| if Current_Subprogram is not Empty, set its flag Body_Is_In_ALFA to |
| False, otherwise do nothing. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * inline.adb, stand.ads, sem_ch6.adb, sem_ch8.adb: Minor reformatting. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch4.ads: minor formatting. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb, err_vars.ads, sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, |
| debug.adb, sem_util.adb, sem_res.adb, sem_attr.adb, gnat1drv.adb, |
| errout.adb, errout.ads, exp_ch6.adb, sem_ch4.adb, restrict.adb, |
| restrict.ads, sem_ch6.adb, sem_ch8.adb, sem_ch11.adb, |
| opt.ads: cleanup of SPARK mode |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * cstand.adb (Create_Standard): sets Is_In_ALFA component of standard |
| types. |
| * einfo.adb, einfo.ads (Is_In_ALFA): add flag for all entities |
| (Is_In_ALFA, Set_Is_In_ALFA): new subprograms to access flag Is_In_ALFA |
| * sem_ch3.adb |
| (Analyze_Object_Declaration): set Is_In_ALFA flag for objects |
| (Constrain_Enumeration): set Is_In_ALFA flag for enumeration subtypes |
| (Constrain_Integer): set Is_In_ALFA flag for integer subtypes |
| (Enumeration_Type_Declaration): set Is_In_ALFA flag for enumeration |
| types. |
| (Set_Scalar_Range_For_Subtype): unset Is_In_ALFA flag for subtypes with |
| non-static range. |
| * sem_ch6.adb (Analyze_Return_Type): unset Is_In_ALFA flag for |
| functions whose return type is not in ALFA. |
| (Analyze_Subprogram_Specification): set Is_In_ALFA flag for subprogram |
| specifications. |
| (Process_Formals): unset Is_In_ALFA flag for subprograms if a |
| parameter's type is not in ALFA. |
| * stand.ads (Standard_Type_Is_In_ALFA): array defines which standard |
| types are in ALFA. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6 (Analyze_Expression_Function): treat the function as |
| Inline_Always, and introduce a subprogram declaration for it when it is |
| not a completion. |
| * inline.adb (Add_Inlined_Body): recognize bodies that come from |
| expression functions, so that the back-end can determine whether they |
| can in fact be inlined. |
| * sem_util.adb (Is_Expression_Function): predicate to determine whether |
| a function body comes from an expression function. |
| |
| 2011-08-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch6.adb (Check_Conformance): Revise the check for nonconforming |
| null exclusions to test Can_Never_Be_Null on the anonymous access types |
| of the formals rather than testing the formals themselves. Exclude this |
| check in cases where the Old_Formal is marked as a controlling formal, |
| to avoid issuing spurious errors for bodies completing dispatching |
| operations (due to the flag not getting set on controlling access |
| formals in body specs). |
| (Find_Corresponding_Spec): When checking full and subtype conformance of |
| subprogram bodies in instances, pass Designated and E in that order, for |
| consistency with the expected order of the formals (New_Id followed by |
| Old_Id). |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch8.adb: Minor reformatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Subprogram_Renaming): new procedure |
| Check_Class_Wide_Actual, to implement AI05-0071, on defaulted |
| primitive operations of class-wide actuals. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_atag.ads, exp_atag.adb |
| (Build_Common_Dispatching_Select_Statements): Remove argument Loc |
| since its value is implicitly passed in argument Typ. |
| * exp_disp.adb (Make_Disp_Conditional_Select_Body, |
| Make_Disp_Timed_Select_Body): Remove Loc in calls to routine |
| Build_Common_Dispatching_Select_Statements. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, exp_atag.ads, get_scos.adb, get_scos.ads, |
| exp_disp.adb, lib-xref.adb, lib-xref.ads: Update comments. |
| Minor reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_res.adb: Minor reformatting. |
| * sem_prag.adb: Minor reformatting. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_atag.adb, exp_atags.ads |
| (Build_Common_Dispatching_Select_Statement): Replace argument DT_Ptr |
| by the tagged type Entity. Required to use this routine in the VM |
| targets since we do not have available the Tag entity in the VM |
| platforms. |
| * exp_ch6.adb |
| (Expand_N_Subprogram_Body): Do not invoke Build_VM_TSDs if package |
| Ada.Tags has not been previously loaded. |
| * exp_ch7.adb |
| (Expand_N_Package_Declaration, Expand_N_Package_Body): Do not invoke |
| Build_VM_TSDs if package Ada.Tags has not been previously loaded. |
| * sem_aux.adb |
| (Enclosing_Dynamic_Scope): Add missing support to handle the full |
| view of enclosing scopes. Required to handle enclosing scopes that |
| are synchronized types whose full view is a task type. |
| * exp_disp.adb |
| (Build_VM_TSDs): Minor code improvement to avoid generating and |
| analyzing lists with empty nodes. |
| (Make_Disp_Asynchronous_Select_Body): Add support for VM targets. |
| (Make_Disp_Conditional_Select_Body): Add support for VM targets. |
| (Make_Disp_Get_Prim_Op_Kind): Add support for VM targets. |
| (Make_Disp_Timed_Select_Body): Add support for VM targets. |
| (Make_Select_Specific_Data_Table): Add support for VM targets. |
| (Make_VM_TSD): Generate code to initialize the SSD structure of |
| the TSD. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * lib-writ.adb (Write_ALI): when ALFA mode is set, write local |
| cross-references section in ALI. |
| * lib-xref.adb, lib-xref.ads (Xref_Entry): add components Sub |
| (enclosing subprogram), Slc (location of Sub) and Sun (unit number of |
| Sub). |
| (Enclosing_Subprogram_Or_Package): new function to return the enclosing |
| subprogram or package entity of a node |
| (Is_Local_Reference_Type): new function returns True for references |
| selected in local cross-references. |
| (Lt): function extracted from Lt in Output_References |
| (Write_Entity_Name): function extracted from Output_References |
| (Generate_Definition): generate reference with type 'D' for definition |
| of objects (object declaration and parameter specification), with |
| appropriate locations and units, for use in local cross-references. |
| (Generate_Reference): update fields Sub, Slc and Sun. Keep newly created |
| references of type 'I' for initialization in object definition. |
| (Output_References): move part of function Lt and procedure |
| Write_Entity_Name outside of the body. Ignore references of types 'D' |
| and 'I' introduced for local cross-references. |
| (Output_Local_References): new procedure to output the local |
| cross-references sections. |
| (Lref_Entity_Status): new array defining whether an entity is a local |
| * sem_ch3.adb (Analyze_Object_Declaration): call Generate_Reference |
| with 'I' type when initialization expression is present. |
| * get_scos.adb, get_scos.ads: Correct comments and typos |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.adb (Expand_N_Subprogram_Body): Enable generation of TSDs in |
| the JVM target. |
| * exp_ch7.adb (Expand_N_Package_Body): Enable generation of TSDs in |
| the JVM target. |
| * exp_disp.adb (Build_VM_TSDs): No action needed if the runtime has no |
| TSD support. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (File_Found): New components Excl_File and Excl_Line |
| (No_Space_Img): New function |
| (Find_Excluded_Sources): When reading from a file, record the file name |
| and the line number for each excluded source. |
| (Mark_Excluded_Sources): When reporting an error, if the excluded |
| sources were read from a file, include file name and line number in |
| the error message. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Call): implement rule in RM 12.5.1 (23.3/2). |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch7.adb exp_ch6.adb, exp_disp.adb: Minor reformatting |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.adb (Expand_N_Subprogram_Body): Temporarily restrict the |
| generation of TSDs to the DOTNET compiler. |
| * exp_ch7.adb (Expand_N_Package_Body): Temporarily restrict the |
| generation of TSDs to the DOTNET compiler. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.ads (Build_VM_TSDs): Build the runtime Type Specific Data |
| record of all the tagged types declared inside library level package |
| declarations, library level package bodies or library level subprograms. |
| * exp_disp.adb (Make_VM_TSD): New subprogram that builds the TSD |
| associated with a given tagged type. |
| (Build_VM_TSDs): New subprogram. |
| * exp_ch6.adb (Expand_N_Subprogram_Body): Generate TSDs records of main |
| compilation units that are subprograms. |
| * exp_ch7.adb (Expand_N_Package_Body): Generate TSDs of main |
| compilation units that are package bodies. |
| (Expand_N_Package_Declaration): Generate TSDs of the main compilation |
| units that are a package declaration or a package instantiation. |
| * exp_intr.adb (Expand_Dispatching_Constructor_Call): Minor code |
| reorganization to improve the error generated by the frontend when the |
| function Ada.Tags.Secondary_Tag is not available. |
| * rtsfind.ads (RE_Register_TSD): New runtime entity. |
| * exp_ch4.adb (Expand_N_Type_Conversion): Minor code cleanup. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb (Make_DT): Generate call to Check_TSD in Ada 2005 mode. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * s-imenne.ads: Minor reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-stunau.ads: Add pragma Suppress_Initialization for Big_String |
| * freeze.adb (Warn_Overlay): Don't warn if initialization suppressed |
| * s-stalib.ads: Add pragma Suppress_Initialization for Big_String |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.ads (Materialize_Entity): Document this is only for renamings |
| * exp_ch3.adb (Expand_N_Object_Declaration): Make sure we generate |
| required debug information in the case where we transform the object |
| declaration into a renaming declaration. |
| * exp_ch4.adb (Expand_Concatenate): Generate debug info for result |
| object |
| * exp_dbug.ads (Debug_Renaming_Declaration): Document setting of |
| Materialize_Entity. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.ads, einfo.adb (Suppress_Initialization): Replaces |
| Suppress_Init_Procs. |
| * exp_ch3.adb, exp_disp.adb, freeze.adb: Use |
| Suppress_Initialization/Initialization_Suppressed. |
| * gnat_rm.texi: New documentation for pragma Suppress_Initialization |
| * sem_aux.ads, sem_aux.adb (Initialization_Suppressed): New function |
| * sem_dist.adb: Use Suppress_Initialization/Initialization_Suppressed |
| * sem_prag.adb: New processing for pragma Suppress_Initialization. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi, a-tags.ads, sem_prag.adb, sem_ch12.adb, exp_disp.adb: |
| Minor reformatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_prag.adb (Chain_PPC): Implement AI04-0230: null procedures can |
| only have inheritable classwide pre/postconditions. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * a-tags.ads, a-tags.adb (Check_TSD): New subprogram. |
| * rtsfind.ads (RE_Check_TSD): New runtime entity. |
| * exp_disp.adb (Make_DT): Generate call to the new runtime routine that |
| checks if the external tag of a type is the same as the external tag |
| of some other declaration. |
| |
| 2011-08-02 Thomas Quinot <quinot@adacore.com> |
| |
| * s-taskin.ads: Minor reformatting. |
| |
| 2011-08-02 Emmanuel Briot <briot@adacore.com> |
| |
| * g-comlin.adb (Display_Help): swap the order in which it prints the |
| short help and the general usage. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): copy properly |
| the aspect declarations and attach them to the generic copy for |
| subsequent analysis. |
| (Analyze_Subprogram_Instantiation): copy explicitly the aspect |
| declarations of the generic tree to the new subprogram declarations. |
| * sem_attr.adb (Check_Precondition_Postcondition): recognize |
| conditions that apply to a subprogram instance. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Clarify doc on pragma Source_File_Name[_Project]. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Derived_Type_Declaration): When checking that a untagged |
| private type with a tagged full view is not derived in the immediate |
| scope of the partial view, (RM 7.3 (7)) use the scope of the base type. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb: Minor reformatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Loop_Statement): If the iteration scheme is an |
| Ada2012 iterator, the loop will be rewritten during expansion into a |
| while loop with a cursor and an element declaration. Do not analyze the |
| body in this case, because if the container is for indefinite types the |
| actual subtype of the elements will only be determined when the cursor |
| declaration is analyzed. |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ignore |
| size/alignment related attributes in CodePeer_Mode. |
| |
| 2011-08-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch3.adb (Check_Ops_From_Incomplete_Type): Remove call to |
| Prepend_Element, since this can result in the operation getting the |
| wrong slot in the full type's dispatch table if the full type has |
| inherited operations. The incomplete type's operation will get added |
| to the proper position in the full type's primitives |
| list later in Sem_Disp.Check_Operation_From_Incomplete_Type. |
| (Process_Incomplete_Dependents): Add Is_Primitive test when checking for |
| dispatching operations, since there are cases where nonprimitive |
| subprograms can get added to the list of incomplete dependents (such |
| as subprograms in nested packages). |
| * sem_ch6.adb (Process_Formals): First, remove test for being in a |
| private part when determining whether to add a primitive with a |
| parameter of a tagged incomplete type to the Private_Dependents list. |
| Such primitives can also occur in the visible part, and should not have |
| been excluded from being private dependents. |
| * sem_ch7.adb (Uninstall_Declarations): When checking the rule of |
| RM05-3.10.1(9.3/2), test that a subprogram in the Private_Dependents |
| list of a Taft-amendment incomplete type is a primitive before issuing |
| an error that the full type must appear in the same unit. There are |
| cases where nonprimitives can be in the list (such as subprograms in |
| nested packages). |
| * sem_disp.adb (Derives_From): Use correct condition for checking that |
| a formal's type is derived from the type of the corresponding formal in |
| the parent subprogram (the condition was completely wrong). Add |
| checking that was missing for controlling result types being derived |
| from the result type of the parent operation. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * errout.adb (First_Node): minor renaming |
| * restrict.adb (Check_Formal_Restriction): put restriction warning on |
| first node. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb (Resolve_Logical_Op): ensure N is a binary operator |
| before accessing operands. |
| * sem_util.adb (Is_SPARK_Initialization_Expr): follow original nodes to |
| decide whether an initialization expression respects SPARK rules, as |
| the plain node is the expanded one. This allows for more valid warnings |
| to be issued. |
| * gnat_rm.texi: Minor update. |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Revert |
| previous change. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_ch4.adb: Minor reformatting. |
| |
| 2011-08-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Reformatting. Wrap the original |
| loop statements and the element renaming declaration with a block when |
| the element type is controlled. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sinfo.ads: Minor formatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_aggr.adb (Add_Association): if the association has a box and no |
| expression, use the Sloc of the aggregate itself for the new |
| association. |
| * errout.adb (First_Node): Exclude nodes with no Sloc, and always use |
| the Original_Node. |
| |
| 2011-08-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and refactoring. |
| When a container is provided via a function call, generate a renaming |
| of the function result. This avoids the creation of a transient scope |
| and the premature finalization of the container. |
| * exp_ch7.adb (Is_Container_Cursor): Removed. |
| (Wrap_Transient_Declaration): Remove the supression of the finalization |
| of the list controller when the declaration denotes a container cursor, |
| it is not needed. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * restrict.adb (Check_Formal_Restriction): only issue a warning if the |
| node is from source, instead of the original node being from source. |
| * sem_aggr.adb |
| (Resolve_Array_Aggregate): refine the check for a static expression, to |
| recognize also static ranges |
| * sem_ch3.adb, sem_ch3.ads (Analyze_Component_Declaration, |
| Array_Type_Declaration): postpone the test for the type being a subtype |
| mark after the type has been resolved, so that component-selection and |
| expanded-name are discriminated. |
| (Make_Index, Process_Range_Expr_In_Decl): add a parameter In_Iter_Schm |
| to distinguish the case of an iteration scheme, so that an error is |
| issed on a non-static range in SPARK except in an iteration scheme. |
| * sem_ch5.adb (Analyze_Iteration_Scheme): call Make_Index with |
| In_Iter_Schm = True. |
| * sem_ch6.adb (Analyze_Subprogram_Specification): refine the check for |
| user-defined operators so that they are allowed in renaming |
| * sem_ch8.adb |
| (Find_Selected_Component): refine the check for prefixing of operators |
| so that they are allowed in renaming. Move the checks for restrictions |
| on selector name after analysis discriminated between |
| component-selection and expanded-name. |
| * sem_res.adb (Resolve_Op_Concat_Arg): do not issue a warning on |
| concatenation argument of string type if it is static. |
| * sem_util.adb, sem_util.ads |
| (Check_Later_Vs_Basic_Declarations): add a new function |
| Is_Later_Declarative_Item to decice which declarations are allowed as |
| later items, in the two different modes Ada 83 and SPARK. In the SPARK |
| mode, add that renamings are considered as later items. |
| (Enclosing_Package): new function to return the enclosing package |
| (Enter_Name): correct the rule for homonyms in SPARK |
| (Is_SPARK_Initialization_Expr): default to returning True on nodes not |
| from source (result of expansion) to avoid issuing wrong warnings. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * errout.adb: On anything but an expression First_Node returns its |
| argument. |
| |
| 2011-08-02 Pascal Obry <obry@adacore.com> |
| |
| * prj-proc.adb, make.adb, makeutl.adb: Minor reformatting. |
| |
| 2011-08-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and reorganization. |
| Set the associated loop as the related expression of internally |
| generated cursors. |
| * exp_ch7.adb (Is_Container_Cursor): New routine. |
| (Wrap_Transient_Declaration): Supress the finalization of the list |
| controller when the declaration denotes a container cursor. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * opt.ads (SPARK_Mode): update comment, SPARK_Mode only set through |
| command line now. |
| * par-ch3.adb (P_Delta_Constraint): remove check in SPARK mode that the |
| expression is a simple expression. This check cannot be performed in |
| the semantics, so just drop it. |
| (P_Index_Or_Discriminant_Constraint): move check that the index or |
| discriminant is a subtype mark to Analyze_Subtype_Declaration in the |
| semantics. Other cases were previously checked in the semantics. |
| * par-ch4.adb (P_Name): move checks that a selector name is not |
| character literal or an operator symbol to Find_Selected_Component in |
| the semantics |
| * par-ch5.adb (Parse_Decls_Begin_End): move check that basic |
| declarations are not placed after later declarations in a separate |
| procedure in Sem_Util (possibly not the best choice?), to be used both |
| during parsing, for Ada 83 mode, and during semantic analysis, for |
| SPARK mode. |
| * par-endh.adb (Check_End): move check that end label is not missing |
| to Process_End_Label in the semantics |
| * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): remove |
| the special case for SPARK restriction |
| * par.adb: use and with Sem_Util, for use in Parse_Decls_Begin_End |
| * restrict.adb, restrict.ads (Check_Formal_Restriction): add a |
| parameter Force to issue the error message even on internal node (used |
| for generated end label). Call Check_Restriction to check when an error |
| must be issued. In SPARK mode, issue an error message even if the |
| restriction is not set. |
| (Check_Restriction): new procedure with an additional out parameter to |
| inform the caller that a message has been issued |
| * sem_aggr.adb: Minor modification of message |
| * sem_attr.adb (Analyze_Attribute): call Check_Formal_Restriction |
| instead of issuing an error message directly |
| * sem_ch3.adb (Analyze_Declarations): move here the check that basic |
| declarations are not placed after later declarations, by calling |
| Check_Later_Vs_Basic_Declarations |
| (Analyze_Subtype_Declaration): move here the check that an index or |
| discriminant constraint must be a subtype mark. Change the check that |
| a subtype of String must start at one so that it works on subtype marks. |
| * sem_ch4.adb (Analyze_Call): move here the check that a named |
| association cannot follow a positional one in a call |
| * sem_ch5.adb (Check_Unreachable_Code): call Check_Formal_Restriction |
| instead of issuing an error message directly |
| * sem_ch8.adb (Find_Selected_Component): move here the check that a |
| selector name is not a character literal or an operator symbol. Move |
| here the check that the prefix of an expanded name cannot be a |
| subprogram or a loop statement. |
| * sem_util.adb, sem_util.ads (Check_Later_Vs_Basic_Declarations): new |
| procedure called from parsing and semantics to check that basic |
| declarations are not placed after later declarations |
| (Process_End_Label): move here the check that end label is not missing |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Ignore enum |
| representation clause in codepeer mode, since it confuses CodePeer and |
| does not bring useful info. |
| |
| 2011-08-02 Ed Falis <falis@adacore.com> |
| |
| * init.c: initialize fp hw on MILS. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * errout.adb (First_Node): for bodies, return the node itself (small |
| optimization). For other nodes, do not check source_unit if the node |
| comes from Standard. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch3.adb: Minor comment additions. |
| * sem_ch13.adb: Minor reformatting. |
| |
| 2011-08-02 Pascal Obry <obry@adacore.com> |
| |
| * make.adb, makeutl.adb: Removes some superfluous directory separator. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_attr.adb: Minor reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.adb (Has_Default_Aspect): Replaces Has_Default_Value |
| (Has_Default_Component_Value): Removed |
| * einfo.ads Comment updates |
| (Has_Default_Aspect): Replaces Has_Default_Value |
| (Has_Default_Component_Value): Removed |
| * exp_ch13.adb |
| (Expand_N_Freeze_Entity): Handle Default[_Component]_Value aspects |
| * exp_ch3.adb |
| (Build_Array_Init_Proc): Handle Default_[Component_]Value aspects |
| (Get_Simple_Init_Val): Handle Default_Value aspect |
| (Needs_Simple_Initialization): Handle Default_Value aspect |
| * exp_ch3.ads: Needs_Simple_Initialization |
| * freeze.adb (Freeze_Entity): Handle Default_[Component_]Value aspect |
| * par-prag.adb (Pragma_Default[_Component]Value) Removed |
| * sem_ch13.adb |
| (Analyze_Aspect_Specifications): Fix Default[_Component]_Value aspects |
| * sem_prag.adb (Pragma_Default[_Component]Value) Removed |
| * snames.ads-tmpl (Pragma_Default[_Component]Value) Removed |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iterator_Specification): use base type to locate |
| package containing iteration primitives. |
| exp_ch5.adb (Expand_Iterator_Loop): ditto. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iteration_Scheme): For an Ada2012 iterator with |
| "of", pre-analyze expression in case it is a function call with |
| finalization actions that must be placed ahead of the loop. |
| * exp_ch5.adb (Expand_Iterator_Loop): If condition_actions are present |
| on an Ada2012 iterator, insert them ahead of the rewritten loop. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * cstand.adb (Create_Float_Types): Only consider C's long double for |
| Long_Long_Float, in addition to double. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_ch5.adb, sem_type.adb, switch-c.adb, switch-c.ads, |
| sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, warnsw.ads, |
| prepcomp.ads, cstand.adb, stand.ads, a-calfor.adb, s-stusta.adb: |
| Minor reformatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb: handle properly 'Result when it is a prefix of an |
| indexed component. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * einfo.ads, einfo.adb |
| (Original_Access_Type): Move this attribute to Node26 since there was |
| an undocumented use of Node21 in E_Access_Subprogram_Type entities |
| which causes conflicts and breaks the generation of the .NET compiler. |
| (Interface_Name): Add missing documentation on JGNAT only uses of |
| this attribute. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * cstand.adb (Back_End_Float_Types): Use Elist instead of Nlist |
| (Find_Back_End_Float_Type): Likewise |
| (Create_Back_End_Float_Types): Likewise |
| (Create_Float_Types): Likewise |
| (Register_Float_Type): Likewise |
| * sem_ch3.adb (Floating_Point_Type_Declaration): Use Elist instead of |
| Nlist and split out type selection in new local Find_Base_Type function. |
| * sem_prag.adb (Process_Import_Predefined_Type): Use Elist instead of |
| Nlist |
| * stand.ads (Predefined_Float_Types): Use Elist instead of Nlist |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * inline.adb: Minor code reorganization (put Get_Code_Unit_Entity in |
| alpha order). |
| * opt.ads: Minor comment change. |
| * sem_ch12.adb: Minor code reorganization. |
| |
| 2011-08-02 Gary Dismukes <dismukes@adacore.com> |
| |
| * sem_ch3.adb (Complete_Private_Subtype): Don't append the private |
| subtype's list of rep items to the list on the full subtype in the case |
| where the lists are the same. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * switch-c.adb (Free): New deallocation procedure to avoid implicitly |
| using the one from System.Strings, which also deallocates all strings. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * gcc-interface/gigi.h, gcc-interface/misc.c (enumerate_modes): New |
| function. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-02 Olivier Hainque <hainque@adacore.com> |
| |
| * gcc-interface/trans.c (Subprogram_Body_to_gnu): Set the function |
| end_locus. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch3.adb (Check_Anonymous_Access_Components): Create extra formals |
| associated with anonymous access to subprograms. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * opt.ads |
| (Preprocessing_Symbol_Defs): Move from Prepcomp.Symbol_Definitions. |
| (Preprocessing_Symbol_Last): Move from Prepcomp.Last_Definition. |
| * prepcomp.adb (Symbol_Definitions, Last_Definition): Move to opt.ads |
| (Add_Symbol_Definition): Move to switch-c.adb |
| (Process_Command_Line_Symbol_Definitions): Adjust references to above. |
| * prepcomp.ads: Remove dependency on Ada.Unchecked_Deallocation. |
| (Add_Symbol_Definition): Move to switch-c.adb. |
| * sem_ch13.adb, sem_prag.adb: Add dependency on Warnsw. |
| * sem_warn.adb |
| (Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch): |
| Move to warnsw.adb. |
| * sem_warn.ads (Warn_On_Record_Holes, Warn_On_Overridden_Size, |
| Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch): |
| Move to warnsw.adb. |
| * switch-c.adb: Replace dependency on Prepcomp and Sem_Warn by Warnsw. |
| (Add_Symbol_Definition): Moved from Prepcomp. |
| * switch-c.ads: Update copyright notice. Use String_List instead of |
| Argument_List, removing dependency on System.OS_Lib. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): issue an error in formal |
| mode on initialization expression which does not respect SPARK |
| restrictions. |
| * sem_util.adb, sem_util.ads (Is_SPARK_Initialization_Expr): determines |
| if the tree referenced by its argument represents an initialization |
| expression in SPARK, suitable for initializing an object in an object |
| declaration. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Link the |
| internally generated access to subprogram with its associated protected |
| subprogram type. |
| * einfo.ads, einfo.adb (Original_Access_Type): New attribute. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * cstand.adb (Register_Float_Type): Print information about type to |
| register, if the Debug_Flag_Dot_B is set. |
| * debug.adb (Debug_Flag_Dot_B): Document d.b debug option. |
| * rtsfind.ads (RE_Max_Base_Digits): New run time entity. |
| * sem_ch3.adb (Floating_Point_Type_Declaration): Allow declarations |
| with a requested precision of more than Max_Digits digits and no more |
| than Max_Base_Digits digits, if a range specification is present and the |
| Predefined_Float_Types list has a suitable type to derive from. |
| * sem_ch3.adb (Rep_Item_Too_Early): Avoid generating error in the |
| case of type completion with pragma Import |
| * sem_prag.adb |
| (Process_Import_Predefined_Type): Processing to complete a type |
| with pragma Import. Currently supports floating point types only. |
| (Set_Convention_From_Pragma): Do nothing without underlying type. |
| (Process_Convention): Guard against absence of underlying type, |
| which may happen when importing incomplete types. |
| (Process_Import_Or_Interface): Handle case of importing predefined |
| types. Tweak error message. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * inline.adb (Add_Inlined_Body): Adjust check for library-level inlined |
| functions to previous change. Reorganize code slightly. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * back_end.ads (Register_Type_Proc): New call back procedure type for |
| allowing the back end to provide information about available types. |
| (Register_Back_End_Types): New procedure to register back end types. |
| * back_end.adb (Register_Back_End_Types): Call the back end to enumerate |
| available types. |
| * cstand.adb (Back_End_Float_Types): New list for floating point types |
| supported by the back end. |
| (Build_Float_Type): Add extra parameter for Float_Rep_Kind. |
| (Copy_Float_Type): New procedure to make new copies of predefined types. |
| (Register_Float_Type): New call back procedure to populate the BEFT list |
| (Find_Back_End_Float_Type): New procedure to find a BEFT by name |
| (Create_Back_End_Float_Types): New procedure to populate the BEFT list. |
| (Create_Float_Types): New procedure to create entities for floating |
| point types predefined in Standard, and put these and any remaining |
| BEFTs on the Predefined_Float_Types list. |
| * stand.ads (Predefined_Float_Types): New list for predefined floating |
| point types that do not have declarations in package Standard. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * inline.adb (Get_Code_Unit_Entity): New local function. Returns the |
| entity node for the unit containing the parameter. |
| (Add_Inlined_Body): Use it to find the unit containing the subprogram. |
| (Add_Inlined_Subprogram): Likewise. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-02 Thomas Quinot <quinot@adacore.com> |
| |
| * s-stusta.adb (Print): Make sure Pos is always initialized to a |
| suitable value. |
| |
| 2011-08-02 Geert Bosch <bosch@adacore.com> |
| |
| * a-calfor.adb (Image): Simplify, removing unnecessary uses of 'Image. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_type.adb (Covers): Move trivial case to the top and reuse the |
| computed value of Base_Type. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * restrict.adb (Check_Restriction): issue an error for any use of |
| class-wide, even if the No_Dispatch restriction is not set. |
| * sem_aggr.adb: Correct typos in comments and messages in formal mode |
| * sem_ch3.adb (Process_Full_View): issue an error in formal mode is, |
| when completing a private extension, the type named in the private part |
| is not the same as that named in the visible part. |
| * sem_res.adb (Resolve_Call): issue an error in formal mode on the use |
| of an inherited primitive operations of a tagged type or type extension |
| that returns the tagged type. |
| * sem_util.adb, sem_util.ads (Is_Inherited_Operation_For_Type): new |
| function which returns True for an implicit operation inherited by the |
| derived type declaration for the argument type. |
| (Is_SPARK_Object_Reference): move to appropriate place in alphabetic |
| order. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Pre_Analyze_Range): new procedure extracted from |
| Process_Bounds, to perform analysis with expansion of a range or an |
| expression that is the iteration scheme for a loop. |
| (Analyze_Iterator_Specification): If domain of iteration is given by a |
| function call with a controlled result, as is the case if call returns |
| a predefined container, ensure that finalization actions are properly |
| generated. |
| * par-ch3.adb: accept Ada2012 iterator form in P_Discrete_Range. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_util.ads, sem_util.adb (Is_Variable): Add a new formal to |
| determine if the analysis is performed using N or Original_Node (N). |
| * exp_util.adb (Side_Effect_Free): Code cleanup since the new |
| functionality of routine Is_Variable avoids code duplication. |
| * checks.adb (Determine_Range): Handle temporaries generated by |
| Remove_Side_Effects. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Quantified_Expression): Force reanalysis and |
| expansion of the condition. Required since the previous analysis was |
| done with expansion disabled (see Resolve_Quantified_Expression) and |
| hence checks were not inserted and record comparisons have not been |
| expanded. |
| |
| 2011-08-02 Ed Falis <falis@adacore.com> |
| |
| * s-taprop-vxworks.adb, s-intman-vxworks.adb, s-intman-vxworks.ads: |
| Update header. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * opt.ads: Minor comment fix. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * sem_ch12.adb (Analyze_Package_Instantiation, |
| Analyze_Subprogram_Instantiation): Turn off style checking while |
| analyzing an instance. Whatever style checks that apply to the generic |
| unit should apply, so it makes no sense to apply them in an instance. |
| This was causing trouble when compiling an instance of a runtime |
| unit that violates the -gnatyO switch. |
| * stylesw.adb (Set_Style_Check_Options): "when 'O' =>" was missing from |
| one of the two case statements, causing spurious errors. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * uname.adb: Minor reformatting. |
| * gnatcmd.adb: Minor reformatting. |
| * exp_attr.adb: Minor reformatting. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Assignment_Statement): under restriction |
| No_Dispatching_Calls, do not look for the Assign primitive, because |
| predefined primitives are not created in this case. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * stylesw.ads: Minor comment fixes. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Add_To_Result): New procedure. |
| |
| 2011-08-02 Jose Ruiz <ruiz@adacore.com> |
| |
| * exp_attr.adb (Find_Stream_Subprogram): When using a configurable run |
| time, if the specific run-time routines for handling streams of strings |
| are not available, use the default mechanism. |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-regpat.ads: Fix typo. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-conf.adb (Get_Or_Create_Configuration_File): If On_Load_Config is |
| not null, call it to create the in memory config project file without |
| parsing an existing default config project file. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * atree.adb (Allocate_Initialize_Node): Remove useless temporaries. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_elim.adb: an abstract subprogram does not need an eliminate |
| pragma for its descendant to be eliminable. |
| |
| 2011-08-02 Ed Falis <falis@adacore.com> |
| |
| * init.c: revert to handling before previous checkin for VxWorks |
| * s-intman-vxworks.adb: delete unnecessary declarations related to |
| using Ada interrupt facilities for handling signals. |
| Delete Initialize_Interrupts. Use __gnat_install_handler instead. |
| * s-intman-vxworks.ads: Import __gnat_install_handler as |
| Initialize_Interrupts. |
| * s-taprop-vxworks.adb: Delete Signal_Mask. |
| (Abort_Handler): change construction of mask to unblock exception |
| signals. |
| |
| 2011-08-02 Jerome Guitton <guitton@adacore.com> |
| |
| * a-except-2005.adb (Raise_From_Signal_Handler): Call |
| Debug_Raise_Exception before propagation starts. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Expand_Call): Guard restriction checks with a call |
| to Restriction_Check_Required. |
| * sem_ch3.adb (Analyze_Object_Declaration): Likewise. |
| * sem_res.adb (Resolve_Call): Likewise. |
| * sem_attr.adb (Check_Stream_Attribute): Likewise. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * stylesw.ads: Update comment. |
| * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N. |
| * errout.ads: Remove obsolete comment. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function. |
| (Set_Is_Safe_To_Reevaluate): new procedure. |
| * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no |
| assignment is allowed on safe-to-reevaluate variables. |
| (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the |
| temporary created to remove side effects in expressions that use |
| the secondary stack as safe-to-reevaluate. |
| * exp_util.adb (Side_Effect_Free): Add missing code to handle well |
| variables that are not true constants. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads, |
| sem_res.adb, sem_ch6.adb: Minor reformatting. |
| |
| 2011-08-02 Jerome Guitton <guitton@adacore.com> |
| |
| * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do |
| not set Overridden_Operation if subprogram is an initialization |
| procedure. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * par-ch6.adb: Correct obsolete name in comments |
| * restrict.adb, restrict.ads (Check_Formal_Restriction): new function |
| which takes two message arguments (existing function takes one), with |
| second message used for continuation. |
| * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject |
| block statements that originate from a source block statement, not |
| generated block statements |
| * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for |
| symmetry with procedure case |
| * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new |
| function to issue an error in formal mode if a package specification |
| contains more than one tagged type or type extension. |
| * sem_res.adb (Resolve_Actuals): in formal mode, check that actual |
| parameters matching formals of tagged types are objects (or ancestor |
| type conversions of objects), not general expressions. Issue an error |
| on view conversions that are not involving ancestor conversion of an |
| extended type. |
| (Resolve_Type_Conversion): in formal mode, issue an error on the |
| operand of an ancestor type conversion which is not an object |
| * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the |
| procedure so that it works also for actuals of function calls |
| (Is_Actual_Tagged_Parameter): new function which determines if its |
| argument is an actual parameter of a formal of tagged type in a |
| subprogram call |
| (Is_SPARK_Object_Reference): new function which determines if the tree |
| referenced by its argument represents an object in SPARK |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting |
| Minor comment addition |
| Minor error msg text change |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New |
| function. Used to be more precise when we generate a variable plus one |
| assignment to remove side effects in the evaluation of the Bound |
| expressions. |
| (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes |
| of the bound expression to force its re-analysis and thus expand the |
| associated transient scope (if required). Code cleanup replacing the |
| previous code that declared the constant entity by an invocation to |
| routine Force_Evaluation which centralizes this work in the frontend. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table |
| (Base_Type): Now uses improved Is_Base_Type function |
| * einfo.ads (Base_Type): Inline this function |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion |
| (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update dependencies. |
| * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks |
| targets. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on |
| non-simple expression used in delta constraint |
| (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on |
| index constraint which is not a subtype mark |
| * par.adb: With and use Restrict |
| * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal |
| mode on component type which is not a subtype mark and default |
| expression on component |
| (Analyze_Subtype_Declaration): issue an error in formal mode on subtype |
| of string which does not have a lower index bound equal to 1 |
| (Array_Type_Declaration): issue an error in formal mode on index or |
| component type which is not a subtype mark, and on aliased keyword on |
| component |
| (Derived_Type_Declaration): issue an error in formal mode on interface, |
| limited or abstract type |
| (Record_Type_Declaration): issue an error in formal mode on interface |
| (Record_Type_Definition): issue an error in formal mode on tagged types |
| and type extensions not declared in the specification of a library unit |
| package; on null non-tagged record; on variant part |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir |
| not declared for qualified library project when Library_Name is not |
| declared, but Library_Dir is. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated |
| pragmas (affects aspects [Component_]Default_Value |
| (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use |
| component type for the resolution |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.adb (Base_Type): Tune implementation for speed. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb: Minor reformatting. |
| |
| 2011-08-02 Thomas Quinot <quinot@adacore.com> |
| |
| * scos.ads: Update comments. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the |
| base type, because the parent may be a subtype of a private type whose |
| convention is established in a private part. |
| |
| 2011-08-02 Hristian Kirtchev <kirtchev@adacore.com> |
| |
| * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return |
| statement in a block when the expansion of the return expression has |
| created a finalization chain. |
| * freeze.adb (Freeze_Expression): Alphabetize all choices associated |
| with the parent node. |
| Add N_Extended_Return_Statement to handle the case where a transient |
| object declaration appears in the Return_Object_Declarations list of |
| an extended return statement. |
| |
| 2011-08-02 Matthew Gingell <gingell@adacore.com> |
| |
| * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly |
| unused parameter 'name'. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_elim.adb (Set_Eliminated): If the overridden operation is an |
| inherited operation, check whether its alias, which is the source |
| operastion that it renames, has been marked eliminated. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an |
| in-mode parameter whose type is an access type since it can be used to |
| modify its designated object. Enforce code that handles as safe an |
| access type that is not access-to-constant but it is the result of a |
| previous removal of side-effects. |
| (Remove_Side_Effects): Minor code reorganization of cases which require |
| no action. Done to incorporate documentation on new cases uncovered |
| working in this ticket: no action needed if this routine was invoked |
| too early and the nodes are not yet decorated. |
| * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls |
| to routine Remove_Side_Effects by calls to Force_Evaluation since they |
| were issued with actuals that are implicitly provided by |
| Force_Evaluation. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_res.adb: Minor reformatting. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure |
| to issue an error in formal mode on attribute not supported in this mode |
| (Analyze_Attribute): issue errors on standard attributes not supported |
| in formal mode. |
| * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of |
| comment, and issue error in formal mode on modulus which is not a power |
| of 2. |
| (Process_Range_Expr_In_Decl): issue error in formal mode on non-static |
| range. |
| * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in |
| subtype mark. |
| * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary |
| operator on modular type (except 'not'). |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor reformatting. |
| |
| 2011-08-02 Arnaud Charlet <charlet@adacore.com> |
| |
| * s-osinte-linux.ads: Minor comment update and reformatting. |
| * i-cexten.ads: Make this unit pure, as for its parent. |
| Will allow its usage in more contexts if needed. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * s-utf_32.ads: Minor comment fix. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive |
| operation of a tagged synchronized type, handle the case where the |
| controlling argument is overloaded. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl: |
| Replace pragma SPARK_95 with pragma Restrictions (SPARK) |
| * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set |
| SPARK mode and formal verification mode on processing SPARK restriction |
| * s-rident.ads (Restriction_Id): add SPARK restriction in those not |
| requiring consistency checking. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_res.adb: Minor reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, |
| a-cforse.ads: Remove unneeded with of Ada.Containers |
| Remove commented out pragma Inline's |
| Move specifications of new subprograms to the actual specs |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, |
| a-cforse.ads: Update comments. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb: add attribute name when 'Result has the wrong prefix. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, |
| a-cforse.ads, a-cofove.ads: Minor reformatting. |
| |
| 2011-08-02 Claire Dross <dross@adacore.com> |
| |
| * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, |
| a-cofove.ads: Add comments. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * gnat_rm.texi: Document formal containers. |
| |
| 2011-08-02 Emmanuel Briot <briot@adacore.com> |
| |
| * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there |
| are empty sections. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor |
| reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.adb: New aspects Default_Value and Default_Component_Value |
| New format of Aspect_Names table checks for omitted entries |
| * aspects.ads: Remove mention of Aspect_Cancel and add documentation on |
| handling of boolean aspects for derived types. |
| New aspects Default_Value and Default_Component_Value |
| New format of Aspect_Names table checks for omitted entries |
| * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag |
| (Has_Default_Value): New flag |
| (Has_Default_Component_Value): New flag |
| (Has_Default_Value): New flag |
| * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names |
| table. |
| * par-prag.adb: New pragmas Default_Value and Default_Component_Value |
| * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects |
| Default_Value and Default_Component_Value |
| * sem_prag.adb: New pragmas Default_Value and Default_Component_Value |
| New aspects Default_Value and Default_Component_Value |
| * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value |
| * sprint.adb: Print N_Aspect_Specification node when called from gdb |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * prj-nmsc.adb (Check_Library_Attributes): For virtual library project, |
| inherit library kind. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds. |
| Minor reformatting. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): Fix thinko. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * impunit.adb: Add comment. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks |
| qualification of aggregates in formal mode |
| (Is_Top_Level_Aggregate): returns True for an aggregate not contained in |
| another aggregate |
| (Resolve_Aggregate): complete the test that an aggregate is adequately |
| qualified in formal mode |
| |
| 2011-08-02 Pascal Obry <obry@adacore.com> |
| |
| * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting. |
| * mlib-prj.adb: Supress warning when compiling binder generated file. |
| (Build_Library): Supress all warnings when compiling the binder |
| generated file. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * errout.adb, errout.ads (Check_Formal_Restriction): move procedure |
| from here... |
| * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here |
| * sem_aggr.adb, sem_ch5.adb, sem_util.adb: |
| Add with/use clauses to make Check_Formal_Restriction visible |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb (Check_Generic_Actuals): handle properly actual |
| in-parameters when type of the generic formal is private in the generic |
| spec and non-private in the body. |
| |
| 2011-08-02 Claire Dross <dross@adacore.com> |
| |
| * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb, |
| a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads, |
| a-cofove.adb, a-cofove.ads: New files implementing formal containers. |
| * impunit.adb, Makefile.rtl: Take new files into account. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb, |
| sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in |
| formal mode |
| * sem_util.adb (Matching_Static_Array_Bounds): proper detection of |
| matching static array bounds, taking into account the special case of |
| string literals |
| * sem_ch3.adb: Typo in comment. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * errout.adb, errout.ads (Check_Formal_Restriction): new procedure |
| which issues an error in formal mode if its argument node is originally |
| from source |
| * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type |
| has a discriminant specification so that it does not include the case |
| of derived types |
| (Derived_Type_Declaration): move here the test that a derived type has a |
| discriminant specification |
| * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the |
| first element of a component association before accessing its choices |
| (presence of component association is not enough) |
| * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram |
| declaration is a library item before accessing the next element in a |
| list, as library items are not member of lists |
| * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, |
| sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use |
| Check_Formal_Restriction whenever possible. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype |
| reference when needed. |
| |
| 2011-08-02 Bob Duff <duff@adacore.com> |
| |
| * gnat_ugn.texi: Fix typo. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of |
| archive file name. Do not use the full path name of archives for Open |
| VMS. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch12.adb, sem_ch11.adb: New calling sequence for |
| Analyze_Aspect_Specifications |
| * sem_ch13.adb |
| (Analyze_Aspect_Specifications): New handling for boolean aspects |
| * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence |
| * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling |
| sequence for Analyze_Aspect_Specifications |
| * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely |
| * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): Remove handling of delayed boolean |
| aspects, since these no longer exist. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * par-ch13.adb (Aspect_Specifications_Present): Always return false on |
| semicolon, do not try to see if there are aspects following it. |
| * par-ch3.adb (P_Declarative_Items): Better message for unexpected |
| aspect spec. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch8.adb, aspects.ads: Minor reformatting. |
| |
| 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline. |
| * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure |
| extracted from... |
| (Analyze_Aspect_Specifications): ...here. Call above procedure. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal |
| mode on subprogram declaration outside of package specification, unless |
| it is followed by a pragma Import |
| * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration, |
| Access_Type_Declaration): issue error in formal mode on access type |
| (Analyze_Incomplete_Type_Decl): issue error in formal mode on |
| incomplete type |
| (Analyze_Object_Declaration): issue error in formal mode on object |
| declaration which does not respect SPARK restrictions |
| (Analyze_Subtype_Declaration): issue error in formal mode on subtype |
| declaration which does not respect SPARK restrictions |
| (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue |
| error in formal mode on digits or delta constraint |
| (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on |
| decimal fixed point type |
| (Derived_Type_Declaration): issue error in formal mode on derived type |
| other than type extensions of tagged record types |
| * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant |
| with check on access definition |
| * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal |
| mode on protected definition. |
| (Analyze_Task_Definition): issue error in formal mode on task definition |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch6.adb (Can_Override_Operator): New function. |
| (Verify_Overriding_Indicator): Add missing code to check overriding |
| indicator in operators. Fixes regression. |
| (Check_Overriding_Indicator): Minor reformating after replacing the |
| code that evaluates if the subprogram can override an operator by |
| invocations to the above new function. |
| * einfo.adb |
| (Write_Field26_Name): Add missing code to ensure that, following |
| the documentation in einfo.ads, this field is not shown as attribute |
| "Static_Initialization" on non-dispatching functions. |
| |
| 2011-08-02 Jose Ruiz <ruiz@adacore.com> |
| |
| * sem_res.adb (Resolve_Call): A call to |
| Ada.Real_Time.Timing_Events.Set_Handler violates restriction |
| No_Relative_Delay (AI-0211) only when it sets a relative timing event, |
| i.e., when the second parameter is of type Time_Span. |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link |
| with an archive instead of -L<library dir> -l<library name>. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed, |
| mark the base types In_Use in addition to making the operations |
| use_visible. |
| |
| 2011-08-02 Ed Falis <falis@adacore.com> |
| |
| * init.c: add and setup __gnat_signal_mask for the exception signals |
| * s-inmaop-vxworks.adb: new file. |
| * s-intman-vxworks.adb: remove unnecessary initializations and |
| simplify remaining |
| * s-intman-vxworks.ads: remove unnecessary variable |
| * s-taprop-vxworks.adb: simplify signal initialization |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch8.adb: Minor code reorganization, comment updates. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util |
| * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved |
| here from Sem_Res. |
| (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression |
| (Matching_Static_Array_Bounds): Moved here from Sem_Res |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5. |
| * par_ch8.adb (P_Use_Type): initialize Used_Operations for node. |
| * sinfo.ads, sinfo.adb (Used_Operations): new attribute of |
| use_type_clauses, to handle more efficiently use_type and use_all_type |
| constructs. |
| * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the |
| Ada2012 Use_All_Type clause. |
| (Use_Class_Wide_Operations): new procedure. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb, |
| sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized |
| expression to expression function. |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb: transform simple Ada2012 membership into equality only |
| if types are compatible. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb (Matching_Static_Array_Bounds): new function which |
| returns True if its argument array types have same dimension and same |
| static bounds at each index. |
| (Resolve_Actuals): issue an error in formal mode on actuals passed as |
| OUT or IN OUT paramaters which are not view conversions in SPARK. |
| (Resolve_Arithmetic_Op): issue an error in formal mode on |
| multiplication or division with operands of fixed point types which are |
| not qualified or explicitly converted. |
| (Resolve_Comparison_Op): issue an error in formal mode on comparisons of |
| Boolean or array type (except String) operands. |
| (Resolve_Equality_Op): issue an error in formal mode on equality |
| operators for array types other than String with non-matching static |
| bounds. |
| (Resolve_Logical_Op): issue an error in formal mode on logical operators |
| for array types with non-matching static bounds. Factorize the code in |
| Matching_Static_Array_Bounds. |
| (Resolve_Qualified_Expression): issue an error in formal mode on |
| qualified expressions for array types with non-matching static bounds. |
| (Resolve_Type_Conversion): issue an error in formal mode on type |
| conversion for array types with non-matching static bounds |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * par-ch10.adb: Minor code reorganization (use Nkind_In). |
| |
| 2011-08-02 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch9.adb: save location of entry for proper error message. |
| |
| 2011-08-02 Javier Miranda <miranda@adacore.com> |
| |
| * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal |
| (Use_Full_View) which permits this routine to climb through the |
| ancestors using the full-view of private parents. |
| * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set |
| Use_Full_View to true in calls to Is_Ancestor. |
| * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to |
| true in call to Is_Ancestor. |
| * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set |
| Use_Full_View to true in call to Is_Ancestor. |
| * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in |
| call to Is_Ancestor. |
| * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set |
| Use_Full_View to true in calls to Is_Ancestor. |
| * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT, |
| Make_Select_Specific_Data_Table, Register_Primitive, |
| Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor. |
| * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View |
| to true in call to Is_Ancestor. |
| * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set |
| Use_Full_View to true in calls to Is_Ancestor. |
| * exp_cg.adb |
| (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor. |
| (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * gnat_rm.texi: Minor reformatting. |
| * sem_prag.adb: Minor reformatting. |
| |
| 2011-08-02 Tristan Gingold <gingold@adacore.com> |
| |
| * vms_data.ads: Add VMS qualifier for -gnateP. |
| |
| 2011-08-02 Robert Dewar <dewar@adacore.com> |
| |
| * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty |
| * par-ch7.adb (P_Package): Proper placement of aspects for package |
| decl/instantiation. |
| * par-endh.adb (Check_End): Ad Is_Sloc parameter |
| (End_Statements): Add Is_Sloc parameterr |
| * par.adb (P_Aspect_Specification): New meaning of Decl = Empty |
| (Check_End): Ad Is_Sloc parameter |
| (End_Statements): Add Is_Sloc parameterr |
| |
| 2011-08-02 Vincent Celier <celier@adacore.com> |
| |
| * ug_words: Add VMS qualifier equivalent to -gnateP: |
| /SYMBOL_PREPROCESSING. |
| |
| 2011-08-02 Jose Ruiz <ruiz@adacore.com> |
| |
| * gnat-style.texi: For hexadecimal numeric literals the typical |
| grouping of digits is 4 to represent 2 bytes. |
| A procedure spec which is split into several lines is indented two |
| characters. |
| |
| 2011-08-02 Yannick Moy <moy@adacore.com> |
| |
| * exp_aggr.adb (Is_Others_Aggregate): move function to other unit. |
| * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here |
| (Resolve_Aggregate): issue errors in formal modes when aggregate is not |
| properly qualified |
| (Resolve_Array_Aggregate): issue errors in formal modes on non-static |
| choice in array aggregate |
| (Resolve_Extension_Aggregate): issue errors in formal modes on subtype |
| mark as ancestor |
| (Resolve_Record_Aggregate): issue errors in formal modes on mixed |
| positional and named aggregate for record, or others in record |
| aggregate, or multiple choice in record aggregate |
| * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when |
| array operands to logical operations AND, OR and XOR do not have the |
| same static lower and higher bounds |
| * sem_ch5.adb, sinfo.ads: Correct typos in comments |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement): |
| Replaces Last_Source_Node_In_Sequence. |
| * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K |
| * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores |
| parens and blank in string (this was inconsistently implemented). |
| * errout.ads |
| (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and |
| blank in string (this was inconsistently implemented). |
| * gnat1drv.adb |
| (Set_Global_Switches): Set formal mode switches appropriately |
| * opt.ads, opt.adb: Formal mode is now global switches, more consistent |
| * par-prag.adb |
| (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and |
| call Set_Error_Msg_Lang to set "spark" as language name. |
| * par.adb: Remove unnecessary call to set formal language for errout |
| * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches |
| appropriately and call Set_Error_Msg_Lang to set "spark" as language |
| name. |
| * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and |
| calls to it, moved after resolution so that types are known |
| * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if |
| result of concatenation is not of type String |
| (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of |
| concatenation is not properly restricted |
| * gnat_rm.texi: Add doc on pragma Spark_95. |
| * gcc-interface/Makefile.in: Remove obsolete target pairs for |
| Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of |
| condition that detects if the overridden operation must replace an |
| existing entity. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded |
| code declarations inserted by Insert_Actions in each alternative of the |
| N_Case_Expression node. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch6.adb: Minor code reorganization. |
| * sem_util.adb: Minor reformatting. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path. |
| * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character |
| literal or operator symbol which is prefixed |
| * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal |
| mode on access attributes. |
| * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check |
| that concatenation operands are properly restricted in formal mode |
| (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure |
| Analyze_Concatenation_Operand. Issue an error in formal mode if the |
| result of the concatenation has a type different from String. |
| (Analyze_Conditional_Expression, Analyze_Explicit_Dereference, |
| Analyze_Quantified_Expression, Analyze_Slice, |
| Analyze_Null): issue an error in formal mode on unsupported constructs |
| * sem_ch5.adb |
| (Analyze_Block_Statement): only issue error on source block statement |
| * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new |
| function which returns the last node in a list of nodes for which |
| Comes_From_Source returns True, if any |
| * sem_ch6.adb (Check_Missing_Return): minor refactoring to use |
| Last_Source_Node_In_Sequence |
| * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming, |
| Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal |
| mode on unsupported constructs |
| * sem_ch9.adb Do not return after issuing error in formal mode, as the |
| rest of the actions may be needed later on since the error is marked as |
| not serious. |
| * sinfo.ads: Typos in comments. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * projects.texi: Minor editing. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for |
| insertion character ~~ |
| * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures |
| (Set_Error_Msg_Lang): new procedure which fixes the language for use |
| with insertion character ~~ |
| (Set_Msg_Text): treat insertion character ~~ |
| * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb, |
| sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to |
| Formal_Error_Msg_... procedures by equivalent Error_Msg_... |
| procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make |
| errors related to the formal language restriction not serious |
| (insertion character |). |
| * par.adb (Par): set formal language for error messages if needed |
| * sem_ch6.adb (Check_Missing_Return): take into account possible |
| generated statements at the end of the function |
| * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and |
| enumeration value to define a new pragma SPARK_95 |
| * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default, |
| SPARK_Version): new type and variables to store the SPARK version |
| (none by default). |
| (SPARK_Mode): return True when SPARK_Version is set |
| * par-prag.adb: Correct indentation |
| (Prag): take Pragma_SPARK_95 into account |
| * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95 |
| into account. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb, |
| sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb, |
| sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass |
| Target_Name to Get_Path call. |
| (Parse_Single_Project): Likewise. |
| (Post_Parse_Context_Clause): Likewise. |
| * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter. |
| Call Initialise_Project_Path with the proper Target_Name. |
| (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat |
| search path. |
| (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path |
| with the proper Target_Name. |
| * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to |
| Part.Parse routine. |
| (Parse_Project_And_Apply_Config): Likewise. |
| * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine. |
| This is fine as this part of the code is supporting only native |
| compilation. |
| * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This |
| is fine as this part of the code is supporting only native compilation. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Enter_Name): issue error in formal mode on declaration |
| of homonym, unless the homonym is one of the cases allowed in SPARK |
| * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for |
| package declaration occurring after a body. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * checks.adb, exp_ch4.adb: Minor reformatting. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * einfo.ads (Access_Disp_Table): Fix documentation. |
| (Dispatch_Table_Wrappers): Fix documentation. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * prj-env.adb, prj-env.ads: Minor reformatting. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.ads, sem_util.adb, par.adb, par_util.adb |
| (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move |
| procedures out of these packages. |
| * errout.ads, errout.adb |
| (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move |
| procedures in of this package |
| (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE |
| * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode |
| on misplaced later vs initial declarations, like in Ada 83 |
| * sem_attr.adb (Processing for Analyze_Attribute): issue error in |
| formal mode on attribute of private type whose full type declaration |
| is not visible |
| * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a |
| package declaration inside a package specification |
| (Analyze_Full_Type_Declaration): issue error in formal mode on |
| controlled type or discriminant type |
| * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on |
| user-defined operator means that it should come from the source |
| (New_Overloaded_Entity): issue error in formal mode on overloaded |
| entity. |
| * sem_ch6.ads, sem_ch13.ads: typos in comments. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * atree.adb: Minor reformatting. |
| * checks.adb: Minor reformatting. |
| |
| 2011-08-01 Vincent Celier <celier@adacore.com> |
| |
| * s-parame-vms-ia64.ads: Fix typo in comment |
| Minor reformatting |
| * s-parame-vms-restrict.ads: Removed, unused. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch3.adb |
| (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound. |
| * sem_ch3.adb |
| (Constrain_Index): Remove side effects in the evaluation of the bounds. |
| * sem_ch3.ads, sem_ch3.adb |
| (Is_Constant_Bound): New extended version of the subprogram that was |
| previously located inside function Exp_Ch3.Is_Variable_Size_Array. |
| Moved here since it is shared by routines of sem_ch3 and exp_ch3. |
| * sem_aux.ads (Constant_Value): Fix typo in comment. |
| * checks.adb (Generate_Index_Checks): New implementation which, for |
| array objects with constant bounds, generates the runtime check |
| referencing the bounds of the array type. For other cases this routine |
| provides its previous behavior obtaining such values from the array |
| object. |
| * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its |
| parent type. |
| * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since |
| we cannot have semantic interpretations of the new node. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified |
| expressions. |
| |
| 2011-08-01 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch8.adb: Minor code editing. |
| * s-vxwext.adb: Remove trailing space. |
| * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for |
| consistency with other files. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * par-ch10.adb: reject parameterized expressions as compilation unit. |
| * sem_ch4.adb: handle properly conditional expression with overloaded |
| then_clause and no else_clause. |
| |
| 2011-08-01 Tristan Gingold <gingold@adacore.com> |
| |
| * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address |
| like done by System.Aux_DEC. |
| * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * par-endh.adb (Check_End): issue a syntax error in SPARK mode for |
| missing label at end of declaration (subprogram or package) |
| * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing |
| of positional and named parameter association |
| * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on |
| Error_Msg_SP which adds a prefix to the error message giving the name |
| of the formal language analyzed |
| * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for |
| access result type in subprogram, unconstrained array as result type,. |
| (Analyze_Subprogram_Declaration): issue an error in formal mode for null |
| procedure |
| * sem_ch8.adb: Code clean up. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch7.adb (Uninstall_Declarations): Remove useless code. |
| * einfo.ads (Access_Disp_Table): Fix documentation. |
| (Dispatch_Table_Wrappers): Fix documentation. |
| * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers, |
| Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions |
| to enforce the documentation of this attribute. |
| (Set_Is_Interface): Cleanup the assertion. |
| * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate |
| the Underlying_Type entity before reading attribute Access_Disp_Table. |
| * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion): |
| Locate the Underlying_Type before reading attribute Access_Disp_Table. |
| * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate |
| the Underlying_Type entity before reading attribute Access_Disp_Table. |
| * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration): |
| Locate the Underlying_Type entity before reading attribute |
| Access_Disp_Table. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * s-poosiz.ads: Additional overriding indicators. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Exit_Statement): add return after error in |
| formal mode. |
| (Analyze_Iteration_Scheme): issue error in formal mode when loop |
| parameter specification does not include a subtype mark. |
| * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in |
| formal mode on abstract subprogram. |
| (Analyze_Subprogram_Specification): issue error in formal mode on |
| user-defined operator. |
| (Process_Formals): issue error in formal mode on access parameter and |
| default expression. |
| * sem_ch9.adb (Analyze_Abort_Statement, |
| Analyze_Accept_Statement, Analyze_Asynchronous_Select, |
| Analyze_Conditional_Entry_Call, Analyze_Delay_Relative, |
| Analyze_Delay_Until, Analyze_Entry_Call_Alternative, |
| Analyze_Requeue, Analyze_Selective_Accept, |
| Analyze_Timed_Entry_Call): issue error in formal mode on such constructs |
| * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error): |
| issue error in formal mode on user-defined raise statement. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a |
| declaration being hidden when overriding an implicit inherited |
| subprogram. |
| * par-ch10.adb (P_Compilation_Unit): In syntax check only mode |
| (-gnats), do not complain about a source file that contains only a |
| pragma No_Body. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop |
| variable if already set. |
| |
| 2011-08-01 Arnaud Charlet <charlet@adacore.com> |
| |
| * g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads, |
| g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads, |
| s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads, |
| g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb, |
| g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads, |
| g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads, |
| g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads, |
| g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb, |
| g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb, |
| g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads, |
| g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads, |
| s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb, |
| g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads, |
| s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads, |
| g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb, |
| g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb, |
| g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb, |
| g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb, |
| g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb, |
| g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb, |
| s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads, |
| s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads, |
| a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb, |
| s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads, |
| s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb, |
| g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads, |
| g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb, |
| g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb, |
| g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads, |
| g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads, |
| g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads, |
| s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads, |
| s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb, |
| g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb, |
| g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads, |
| s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb, |
| s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads, |
| g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads, |
| g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb, |
| g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, |
| s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads, |
| g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads, |
| g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads, |
| g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb, |
| s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb, |
| g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb, |
| g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb, |
| g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb, |
| s-osinte-mingw.ads: Update to GPLv3 run-time license. |
| Use GNAT instead of GNARL. |
| |
| 2011-08-01 Bob Duff <duff@adacore.com> |
| |
| * a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads, |
| a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads, |
| a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor |
| reformatting. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * debug.adb (d.D) reverve flag for the SPARK mode |
| (d.E) reverve flag for SPARK generation mode |
| (d.F) reverve flag for Why generation mode |
| * opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode, |
| ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New |
| functions which return True when the corresponding modes are set |
| (Formal_Language): return "spark" or "alfa" when in formal verification |
| mode. |
| * sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on |
| Error_Msg to prefix the error message with a tag giving the formal |
| language |
| (Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error |
| message with a tag giving the formal language |
| * sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on |
| block statement |
| (Analyze_Case_Statement): issue error in formal mode on case statement |
| with a single "others" case alternative |
| (Analyze_Exit_Statement): issue errors in formal mode on exit |
| statements which do not respect SPARK restrictions |
| (Analyze_Goto_Statement): issue error in formal mode on goto statement |
| (Check_Unreachable_Code): always issue an error (not a warning) in |
| formal mode on unreachable code (concerns both code after an infinite |
| loop and after an unconditional jump, both not allowed in SPARK) |
| * sem_ch6.adb (Analyze_Return_Statement): add call to |
| Set_Return_Present for a procedure containing a return statement |
| (already done for functions in Analyze_Function_Return) |
| (Analyze_Function_Return): issue error in formal mode on extended |
| return or if return is not last statement in function |
| (Check_Missing_Return): issue error in formal mode if function does |
| not end with return or if procedure contains a return |
| * sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new |
| function to detect if there is an inner scope of its parameter S which |
| is a loop. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch6.ads: Minor reformatting. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * sem_util.adb (Abstract_Interface_List): Complete condition when |
| processing private type declarations to avoid reading unavailable |
| attribute. |
| (Is_Synchronized_Tagged_Type): Complete condition when processing |
| private extension declaration nodes to avoid reading unavailable |
| attribute. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads, |
| i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads, |
| s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads, |
| s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages |
| for VMS, instead parametrize the common implementation with |
| System.Parameters declarations. |
| |
| 2011-08-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing. |
| |
| 2011-08-01 Tristan Gingold <gingold@adacore.com> |
| |
| * seh_init.c: Fix SEH handler installation on win64. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent |
| double analysis of an anonymous access to subprogram, because it can |
| lead to improper sharing of profiles and a back-end crash. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * make.adb, sem_ch4.adb: Minor reformatting. |
| * gcc-interface/Make-lang.in: Update dependencies. |
| * sem_util.adb, exp_ch5.adb: Minor reformatting. |
| |
| 2011-08-01 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnat_rm.texi: Fix definition of Long_Integer. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_aggr.adb: check limit size of static aggregate unconditionally, |
| to prevent storage exhaustion. |
| * exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being |
| finalized is a function body, insert the cleanup code before the final |
| return statement, to prevent spurious warnings. |
| * s-pooglo.ads: add overriding indicator. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch4.adb (Operator_Check): improve error message when both a |
| with_clause and a use_clause are needed to make operator usage legal. |
| * sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to |
| determine whether a compilation unit is visible within an other, |
| either through a with_clause in the current unit, or a with_clause in |
| its library unit or one one of its parents. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator |
| over an arbitrary expression of an array or container type. |
| * lib-xref.adb: clarify comment. |
| |
| 2011-08-01 Bob Duff <duff@adacore.com> |
| |
| * einfo.ads: Minor reformatting. |
| * debug.adb: Minor comment improvement. |
| |
| 2011-08-01 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not |
| consider hidden subprograms as valid candidates. |
| |
| 2011-08-01 Arnaud Charlet <charlet@adacore.com> |
| |
| * make.adb (Compile): Strip -mxxx switches in CodePeer mode. |
| |
| 2011-08-01 Vasiliy Fofanov <fofanov@adacore.com> |
| |
| * gnat_ugn.texi: Fix typo. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb, |
| lib-xref.adb: Minor reformatting |
| |
| 2011-08-01 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of |
| when to generate a call to Move_Final_List. |
| (Has_Controlled_Parts): Remove this function. |
| |
| 2011-08-01 Geert Bosch <bosch@adacore.com> |
| |
| * par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra |
| "," in choice list. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for |
| explicit raise of a predefined exception as Comes_From_Source if the |
| original N_Raise_Statement comes from source. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * sinfo.ads: Add comment. |
| * sem_ch6.adb: Minor reformatting. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): Refine check for bad component size |
| clause to avoid rejecting confirming clause when atomic/aliased present. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to |
| better determine whether an entity reference is a write. |
| * sem_util.adb (Is_LHS): refine predicate to handle assignment to a |
| subcomponent. |
| * lib-xref.adb (Output_References): Do no suppress a read reference at |
| the same location as an immediately preceeding modify-reference, to |
| handle properly in-out actuals. |
| |
| 2011-08-01 Tristan Gingold <gingold@adacore.com> |
| |
| * env.c (__gnat_setenv) [VMS]: Refine previous change. |
| |
| 2011-08-01 Quentin Ochem <ochem@adacore.com> |
| |
| * i-cstrin.adb (New_String): Changed implementation, now uses only the |
| heap to compute the result. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * atree.ads: Minor reformatting. |
| |
| 2011-08-01 Emmanuel Briot <briot@adacore.com> |
| |
| * g-expect.adb (Get_Command_Output): Fix memory leak. |
| |
| 2011-08-01 Geert Bosch <bosch@adacore.com> |
| |
| * cstand.adb (P_Float_Type): New procedure to print the definition of |
| predefined fpt types. |
| (P_Mixed_Name): New procedure to print a name using mixed case |
| (Print_Standard): Use P_Float_Type for printing floating point types |
| * einfo.adb (Machine_Emax_Value): Add preliminary support for quad |
| precision IEEE float. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_ch3.adb: Minor reformatting. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is |
| the completion of a generic function, insert the new body rather than |
| rewriting the original. |
| |
| 2011-08-01 Yannick Moy <moy@adacore.com> |
| |
| * sinfo.ads, errout.ads: Typos in comments. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * par-endh.adb: Minor reformatting. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads, aspects.adb: Add aspects for library unit pragmas |
| (Pre_Post_Aspects): New subtype. |
| * par-ch12.adb (P_Generic): New syntax for aspects in packages |
| * par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter |
| * par-ch7.adb (P_Package): Remove Decl parameter |
| (P_Package): Handle new syntax for aspects (before IS) |
| * par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle |
| new aspect syntax |
| (P_Task_Definition): Remove Decl parameter, handle new aspect syntax |
| * par.adb (P_Aspect_Specifications): Add Semicolon parameter |
| (P_Package): Remove Decl parameter |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit |
| aspects |
| * sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect |
| specs |
| * sem_util.ads, sem_util.adb (Static_Boolean): New function |
| * sinfo.ads: Document new syntax for aspects in packages etc. |
| * sprint.adb: Handle new syntax of aspects before IS in package |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * atree.ads: Minor reformatting. |
| * sem_prag.adb: Minor reformatting. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * exp_util.adb (Insert_Actions): Fix error in handling Actions for |
| case expr alternative. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_ch12.adb: Fix typo. |
| |
| 2011-08-01 Geert Bosch <bosch@adacore.com> |
| |
| * sem_prag.adb (Check_No_Link_Name): New procedure. |
| (Process_Import_Or_Interface): Use Check_No_Link_Name. |
| * cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float) |
| instead of Standard_Long_Long_Float_Size global. Preparation for |
| eventual removal of per type constants. |
| * exp_util.ads (Get_Stream_Size): New function returning the stream |
| size value of subtype E. |
| * exp_util.adb (Get_Stream_Size): Implement new function. |
| * exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size |
| function. |
| * exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size |
| * einfo.adb: |
| (Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats |
| |
| 2011-08-01 Geert Bosch <bosch@adacore.com> |
| |
| * cstand.adb: Fix comments. |
| * sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit |
| count of arguments. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * exp_ch4.adb, sem_cat.adb: Minor reformatting. |
| |
| 2011-08-01 Geert Bosch <bosch@adacore.com> |
| |
| * atree.ads: Fix comment. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec. |
| * par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name. |
| * par.adb: Add with for Namet.Sp. |
| * par-tchk.adb: Minor reformatting. |
| |
| 2011-08-01 Vincent Celier <celier@adacore.com> |
| |
| * mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb |
| (Build_Dynamic_Library): Use new function Init_Proc_Name to get the name |
| of the init procedure of a SAL. |
| * mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name): |
| New procedure. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor |
| reformatting. |
| |
| 2011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * adaint.c (__gnat_file_time_name_attr): Get rid of warning. |
| |
| 2011-08-01 Thomas Quinot <quinot@adacore.com> |
| |
| * sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function |
| conformant with its spec (return True only for types that have |
| an overriding Initialize primitive operation that prevents them from |
| having preelaborable initialization). |
| * sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable |
| initialization for controlled types in Ada 2005 or later mode. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition, |
| Postcondition. |
| (Same_Aspect): New function. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect |
| Type_Invariant, Precondition, Postcondition. |
| * snames.ads-tmpl: Add Name_Type_Invariant. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point |
| here. |
| (Freeze_All_Ent): Fix error in handling inherited aspects. |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is |
| already analyzed, but don't skip entire processing of a declaration, |
| that's wrong in some cases of declarations being rewritten. |
| (Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects. |
| Don't delay for integer, string literals |
| Treat predicates in usual manner for delay, remove special case code, |
| not needed. |
| (Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point |
| (Build_Predicate_Function): Update saved expression in aspect |
| (Build_Invariant_Procedure): Update saved expression in aspect |
| * exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization |
| of replacement of discriminant references if the reference is simple. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate. |
| * sem_ch13.adb (Analyze_Aspect_Specification): Add processing for |
| Static_Predicate and Dynamic_Predicate. |
| (Build_Predicate_Function): Add processing for Static_Predicate |
| and Dynamic_Predicate. |
| * sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag |
| (From_Static_Predicate): New flag |
| * snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * usage.adb: Documentation cleanup for Ada version modes in usage. |
| * expander.adb: Minor reformatting. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * atree.ads: Minor comment fix. |
| * a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads, |
| a-witeio.ads, sem_prag.adb: Minor reformatting. |
| |
| 2011-08-01 Doug Rupp <rupp@adacore.com> |
| |
| * env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure |
| pointers. Use descrip.h header file for convenience. Add some |
| comments. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point |
| (Freeze_All): Call Check_Aspect_At_End_Of_Declarations |
| * sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point): |
| New procedure. |
| (Check_Aspect_At_End_Of_Declarations): New procedure |
| (Analye_Aspect_Specification): Minor changes for above procedures |
| * sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect |
| specification node as well. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special |
| Windows files. Use GetFilesAttributes() in this case to check for file |
| existence instead of returning with an error code. |
| |
| 2011-08-01 Vincent Celier <celier@adacore.com> |
| |
| * a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when |
| High is above Source length. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment. |
| |
| 2011-08-01 Robert Dewar <dewar@adacore.com> |
| |
| * aspects.ads (Boolean_Aspects): New subtype. |
| * exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects |
| for derived types in cases where the parent type and derived type have |
| aspects. |
| * freeze.adb (Freeze_Entity): Fix problems in handling derived type |
| with aspects when parent type also has aspects. |
| (Freeze_Entity): Deal with delay of boolean aspects (must evaluate |
| boolean expression at this point). |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in |
| accordance with final decision on the Ada 2012 feature. |
| * sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag. |
| |
| 2011-08-01 Matthew Heaney <heaney@adacore.com> |
| |
| * a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: |
| Fix Replace_Slice when High is above current string size. |
| (Replace_Slice): Fix DL computation when High is above current |
| string length. |
| |
| 2011-08-01 Gary Dismukes <dismukes@adacore.com> |
| |
| * gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired. |
| |
| 2011-08-01 Matthew Heaney <heaney@adacore.com> |
| |
| * a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child |
| of node. |
| |
| 2011-08-01 Pascal Obry <obry@adacore.com> |
| |
| * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor |
| reformatting. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute, case 'Access): Handle properly named |
| access to protected subprograms in generic bodies. |
| * sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a |
| protected type, indicate that the convention of the subprogram is |
| Convention_Protected, because it may be used in subsequent declarations |
| within the protected declaration. |
| |
| 2011-08-01 Vincent Celier <celier@adacore.com> |
| |
| * mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init" |
| and "final" procedures when the name of the library is "ada", to avoid |
| duplicate symbols "adainit" and "adafinal" in executables. |
| |
| 2011-08-01 Ed Schonberg <schonberg@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a |
| quantified expression that appears within a postcondition and uses the |
| Ada2012 'Result attribute. |
| |
| 2011-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * init.c (__gnat_error_handler): Cast reason to int. |
| (__gnat_install_handler): Explain sa_sigaction use. |
| |
| 2011-07-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the |
| subprogram has copy-in copy-out parameters, try to promote the mode of |
| the return type if it is passed in registers. |
| |
| 2011-07-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the |
| left operand as addressable. |
| |
| 2011-07-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (build_function_stub): Remove. |
| (build_return_expr): Likewise. |
| (convert_vms_descriptor): Declare. |
| * gcc-interface/utils.c (convert_vms_descriptor): Make global. |
| (build_function_stub): Move to... |
| * gcc-interface/utils2.c (build_return_expr): Move to... |
| * gcc-interface/trans.c (build_function_stub): ...here. |
| (build_return_expr): ...here. |
| (Subprogram_Body_to_gnu): Add local variable for language_function. |
| Disconnect the parameter attributes cache, if any, once done with it. |
| Call end_subprog_body only after setting the end_locus. |
| Build the stub associated with the function, if any, at the very end. |
| (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local |
| variables and streamline control flow. |
| |
| 2011-07-23 Arnaud Charlet <charlet@adacore.com> |
| |
| PR ada/49819 |
| * gcc-interface/Makefile.in (powerpc-linux): Remove reference to |
| g-trasym-dwarf.adb. |
| |
| 2011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| PR bootstrap/49794 |
| * init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler): |
| Assign to act.sa_sigaction. |
| * tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast |
| current->return_address to char * before arithmetic. |
| |
| 2011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation. |
| Correct argument types. |
| Extract code from reason. |
| (__gnat_install_handler): Assign to act.sa_sigaction. |
| |
| 2011-07-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Make-lang.in (GNAT1_ADA_OBJS): Move ada/b_gnat1.o to... |
| (GNAT1_OBJS): ...here. |
| |
| 2011-07-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/48711 |
| * g-socthi-mingw.adb (Fill): Fix formatting. |
| |
| * gcc-interface/gigi.h: Move around comment. |
| |
| 2011-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR ada/46350 |
| * s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast. |
| |
| 2011-07-14 Florian Weimer <fw@deneb.enyo.de> |
| |
| PR ada/48711 |
| * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL. |
| |
| 2011-07-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit |
| range comparison if Pmode is SImode. |
| |
| 2011-07-12 Laurent GUERBY <laurent@guerby.net> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * adadecode.c: Wrap up in extern "C" block. |
| * adadecode.h: Likewise. |
| * adaint.c: Likewise. Remove 'const' keyword. |
| * adaint.h: Likewise. |
| * argv.c: Likewise. |
| * atree.h: Likewise. |
| * cio.c: Likewise. |
| * cstreams.c: Likewise. |
| * env.c: Likewise. |
| * exit.c: Likewise. |
| * fe.h: Likewise. |
| * final.c: Likewise. |
| * init.c: Likewise. |
| * initialize.c: Likewise. |
| * link.c: Likewise. |
| * namet.h: Likewise. |
| * nlists.h: Likewise. |
| * raise.c: Likewise. |
| * raise.h: Likewise. |
| * repinfo.h: Likewise. |
| * seh_init.c: Likewise. |
| * targext.c: Likewise. |
| * tracebak.c: Likewise. |
| * uintp.h: Likewise. |
| * urealp.h: Likewise. |
| * xeinfo.adb: Wrap up generated C code in extern "C" block. |
| * xsinfo.adb: Likewise. |
| * xsnamest.adb: Likewise. |
| * gcc-interface/gadaint.h: Wrap up in extern "C" block. |
| * gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block. |
| * gcc-interface/misc.c: Likewise. |
| * gcc-interface/Make-lang.in (GCC_LINK): Use LINKER. |
| (GNAT1_C_OBJS): Remove ada/b_gnat1.o. List ada/seh_init.o and |
| ada/targext.o here... |
| (GNAT_ADA_OBJS): ...and not here. |
| (GNAT1_ADA_OBJS): Add ada/b_gnat1.o. |
| (GNATBIND_OBJS): Reorder. |
| |
| 2011-07-07 Richard Henderson <rth@redhat.com> |
| |
| * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call |
| dwarf2out_frame_init. |
| |
| 2011-07-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/misc.c (gnat_init): Tweak previous change. |
| |
| 2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| PR target/39150 |
| * gcc-interface/Makefile.in: Handle x86_64-solaris2. |
| |
| 2011-07-06 Richard Guenther <rguenther@suse.de> |
| |
| * gcc-interface/misc.c (gnat_init): Merge calls to |
| build_common_tree_nodes and build_common_tree_nodes_2. |
| Re-initialize boolean_false_node. |
| |
| 2011-07-02 Eric Botcazou <ebotcazou@adacore.com> |
| Olivier Hainque <hainque@adacore.com> |
| Nicolas Setton <setton@adacore.com> |
| |
| * gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on |
| the type according to the ARTIFICIAL_P parameter. |
| (create_type_decl): Likewise. |
| (create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1. |
| |
| 2011-07-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command. |
| (gnatbind): Likewise. |
| |
| 2011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL). |
| |
| 2011-06-18 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_component_type): Use GNAT_TYPE |
| local variable throughout. Remove useless call to Base_Type. |
| (gnat_to_gnu_field): Use GNAT_FIELD_TYPE local variable throughout. |
| Take it also into account for the volatileness of the field. Set the |
| TREE_SIDE_EFFECTS flag as well in this case. Reorder some warnings. |
| |
| 2011-06-18 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Identifier_to_gnu): Don't set TREE_THIS_NOTRAP |
| on a dereference built for a by-ref object if it has an address clause. |
| |
| 2011-06-18 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.ads (Address_Taken): Document use for the second argument of |
| Asm_Input and Asm_Output attributes. |
| * sem_attr.adb (Analyze_Attribute) <Attribute_Asm_Input>: If the second |
| argument is an entity name, then set Address_Taken on it. |
| <Attribute_Asm_Output>: Likewise. |
| * gcc-interface/trans.c (lvalue_required_for_attribute_p): Handle the |
| Attr_Asm_Input and Attr_Asm_Output attributes explicitly. |
| (gnat_to_gnu) <N_Code_Statement>: If an operand is going to end up in |
| memory and is a CONST_DECL, retrieve its corresponding VAR_DECL. |
| |
| 2011-06-16 Joern Rennecke <joern.rennecke@embecosm.com> |
| |
| PR middle-end/46500 |
| * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args. |
| |
| 2011-06-14 Joseph Myers <joseph@codesourcery.com> |
| |
| * gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o. |
| (ada/utils.o): Update dependencies. |
| * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add |
| ../../../libcpp/libcpp.a. |
| * gcc-interface/utils.c: Include common/common-target.h. |
| (process_attributes): Use targetm_common.have_named_sections. |
| |
| 2011-06-07 Richard Guenther <rguenther@suse.de> |
| |
| * gcc-interface/misc.c (gnat_init): Do not set size_type_node or call |
| set_sizetype. |
| |
| 2011-06-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (gnat_stabilize_reference): Propagate the |
| TREE_THIS_NOTRAP flag. |
| |
| 2011-06-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (gnat_stabilize_reference) <COMPOUND_EXPR>: |
| Fix thinko. |
| |
| 2011-06-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Identifier_to_gnu): Also handle deferred |
| constants whose full view has discriminants specially. |
| |
| 2011-06-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c: Include diagnostic.h. |
| (gnat_write_global_declarations): Output debug information for all |
| global type declarations before finalizing the compilation unit. |
| * gcc-interface/Make-lang.in (ada/utils.o): Add dependency. |
| |
| 2011-05-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * gcc-interface/utils.c (def_fn_type): Remove extra va_end. |
| |
| 2011-05-25 Kai Tietz <ktietz@redhat.com> |
| |
| * adaint.c (__gnat_to_canonical_file_list_next): Use array |
| initialization instead of const/none-const pointer assignment. |
| |
| 2011-05-24 Joseph Myers <joseph@codesourcery.com> |
| |
| * gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include |
| $(EXTRA_GNAT1_OBJS). |
| (GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS). |
| (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove. |
| (gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a. |
| * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use |
| libcommon-target.a instead of prefix.o. |
| |
| 2011-05-21 Joseph Myers <joseph@codesourcery.com> |
| |
| PR ada/49097 |
| * gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on $(LIBDEPS). |
| |
| 2011-05-20 Joseph Myers <joseph@codesourcery.com> |
| |
| * gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove version.o. |
| * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use libcommon.a |
| instead of version.o. |
| |
| 2011-05-18 Kai Tietz <ktietz@redhat.com> |
| |
| * gcc-interface/trans.c (Exception_Handler_to_gnu_sjlj): Use |
| boolean_false_node instead of integer_zero_node. |
| (convert_with_check): Likewise. |
| * gcc-interface/decl.c (choices_to_gnu): Likewise. |
| |
| 2011-05-12 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the |
| type of the parameter is an unconstrained array, convert the actual to |
| the type of the formal in the In Out and Out cases as well. |
| |
| 2011-05-11 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/utils.c (def_fn_type): Don't call build_function_type; |
| call build_function_type_array or build_varargs_function_type_array |
| instead. |
| (create_subprog_type): Don't call build_function_type; call |
| build_function_type_vec instead. |
| |
| 2011-05-11 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL. |
| (TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL. |
| (TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL. |
| |
| 2011-05-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces. |
| |
| * gcc-interface/gigi.h (global_bindings_p): Adjust prototype. |
| * gcc-interface/utils.c (global_bindings_p): Return bool and simplify. |
| |
| 2011-05-05 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/trans.c (Case_Statement_to_gnu): Call build_case_label. |
| |
| 2011-05-05 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/decl.c (intrin_arglists_compatible_p): Use iterators |
| instead of accessing TYPE_ARG_TYPES directly. |
| * gcc-interface/utils.c (handle_nonnull_attribute): Likewise. |
| |
| 2011-05-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/48844 |
| * gcc-interface/gigi.h (get_variant_part): Declare. |
| * gcc-interface/decl.c (get_variant_part): Make global. |
| * gcc-interface/utils2.c (find_common_type): Do not return T1 if the |
| types have the same constant size, are record types and T1 has a |
| variant part while T2 doesn't. |
| |
| 2011-05-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (begin_subprog_body): Do not call |
| get_pending_sizes. |
| (end_subprog_body): Likewise. |
| |
| 2011-05-04 Richard Guenther <rguenther@suse.de> |
| |
| * gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to |
| int_const_binop. |
| (pos_to_constructor): Likewise. |
| |
| 2011-05-03 Nathan Froyd <froydnj@codesourcery.com> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (gigi): Call build_function_type_list instead |
| of build_function_type. Adjust calls to... |
| (build_raise_check): ...this. Do not take a void_tree parameter. |
| Call build_function_type_list instead of build_function_type. |
| Fix head comment and swap couple of conditional blocks. |
| |
| 2011-04-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gnatvsn.ads (Library_Version): Bump to 4.7. |
| (Current_Year): Bump to 2011. |
| |
| 2011-04-29 Michael Matz <matz@suse.de> |
| |
| * gcc-interface/misc.c (gnat_handle_option): Set |
| warn_maybe_uninitialized. |
| |
| 2011-04-23 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * gnat_ugn.texi (Complexity Metrics Control): Update link to |
| the Watson/McCabe paper. |
| |
| 2011-04-23 Jim Meyering <meyering@redhat.com> |
| |
| * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/ |
| |
| 2011-04-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE |
| onto the new type. |
| |
| 2011-04-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG |
| parameter. |
| * gcc-interface/utils.c (create_subprog_decl): Likewise. Set |
| DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add |
| ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl. |
| <all>: Do not set flags on the reused DECL node coming from an alias. |
| Set DECL_IGNORED_P on the DECL node built for subprograms if they |
| don't need debug info here... |
| * gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here. |
| (gigi): Adjust calls to create_subprog_decl. |
| (build_raise_check): Likewise. |
| (establish_gnat_vms_condition_handler): Likewise. |
| (Compilation_Unit_to_gnu): Likewise. |
| (gnat_to_gnu): Likewise. |
| |
| 2011-04-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define. |
| (NO_REORDER_ADAFLAGS): New variable. |
| (EXTRA_GNATTOOLS): Always define. |
| (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h. |
| Clean up and adjust list of files compiled with special options. |
| * gcc-interface/Make-lang.in: Likewise. |
| (ada/decl.o): Cosmetical change. |
| (ada/misc.o): Remove dependency on $(PLUGIN_H). |
| |
| 2011-04-20 Jim Meyering <meyering@redhat.com> |
| |
| * initialize.c (__gnat_initialize): Remove useless if-before-free. |
| |
| 2011-04-17 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with |
| $(CFLAGS) on the link line. |
| |
| 2011-04-17 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the |
| padded type built for the return type if it is unconstrained. |
| |
| 2011-04-14 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/utils.c (gnat_poplevel): Use block_chainon. |
| |
| 2011-04-12 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON |
| before calling TREE_CHAIN. |
| * gcc-interface/misc.c (gnat_init_ts): New function. |
| (LANG_HOOKS_INIT_TS): Define. |
| |
| 2011-04-12 Martin Jambor <mjambor@suse.cz> |
| |
| * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node |
| instead of cgraph_node. |
| |
| 2011-04-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum |
| alignment on fields of the RETURN type built for the Copy-In Copy-Out |
| mechanism. |
| |
| 2011-04-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers |
| of aggregate types that contain a placeholder. |
| |
| 2011-04-08 Nathan Froyd <froydnj@codesourcery.com> |
| |
| * gcc-interface/utils.c (handle_sentinel_attribute): Don't use |
| TYPE_ARG_TYPES. |
| (handle_type_generic_attribute): Likewise. |
| |
| 2011-04-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/47163 |
| * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change. |
| |
| 2011-04-04 Kai Tietz <ktietz@redhat.com> |
| |
| PR ada/47163 |
| * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows targets |
| to flag value. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.c (build_allocator): In the unconstrained array |
| type case, do not strip a padding type around the array type. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (update_pointer_to): Finalize named pointer |
| types. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete. |
| * gcc-interface/misc.c (gnat_handle_option): Remove special handling |
| code for -feliminate-unused-debug-types. |
| (gnat_post_options): Likewise. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial |
| declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a |
| distinct copy. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the |
| DECL_ARTIFICIAL flag on enumeration types. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make |
| fat pointer types artificial unconditionally. |
| <E_Array_Subtype>: Attach the base array type as a parallel type if it |
| isn't artificial. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (get_dummy_type): Declare. |
| (build_dummy_unc_pointer_types): Likewise. |
| (finish_fat_pointer_type): Likewise. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy |
| fat pointer type has been built, complete it in place. |
| <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat |
| and thin pointers. Remove useless variable. |
| (finish_fat_pointer_type): Make global and move to... |
| * gcc-interface/utils.c (finish_fat_pointer_type): ...here. |
| (get_dummy_type): New function. |
| (build_dummy_unc_pointer_types): Likewise. |
| (gnat_pushdecl): Propage the name to the anonymous variants only. |
| (update_pointer_to): Only adjust the pointer types in the unconstrained |
| array case. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it |
| if this is a Taft amendment type and the full declaration is available. |
| * gcc-interface/trans.c (process_type): Likewise. |
| If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P. |
| (process_freeze_entity): Likewise. |
| * gcc-interface/utils.c (dummy_global): New static variable. |
| (gnat_write_global_declarations): If there are types declared as used |
| at the global level, insert them in the global hash table. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param. |
| * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial |
| declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct |
| copy. |
| (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL |
| flag of the type accordingly. |
| * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type. |
| |
| 2011-04-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer |
| finalizing types when updating the pointers to the designated type. |
| <all>: Finalize the deferred types even if we didn't defer processing |
| of incomplete types in this invocation. |
| |
| 2011-04-01 Olivier Hainque <hainque@adacore.com> |
| Nicolas Setton <setton@adacore.com> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/misc.c (gnat_descriptive_type): New function. |
| (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type. |
| |
| 2011-03-28 Kai Tietz <ktietz@redhat.com> |
| |
| * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native |
| Windows targets. |
| (EH_MECHANISM): Use GCC exception mechanism for native Windows targets. |
| * system-mingw.ads (System): Change ZCX_By_Default default to True. |
| |
| * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype. |
| |
| 2011-03-28 Tristan Gingold <gingold@adacore.com> |
| |
| PR ada/44431 |
| * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c. |
| Use ada output of gnatbind. |
| (ada/b_gnatb.adb): Ditto. |
| (ada/b_gnat1.o, ada/b_gnatb.o): New rules. |
| (ada.mostlyclean, ada.stage1) |
| (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile) |
| (ada.stagefeedback): Adjust. |
| * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c. |
| Use ada output of gnatbind. |
| (b_gnatm.adb): Ditto. |
| (b_gnatl.o, b_gnatm.o): New rules. |
| |
| 2011-03-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL |
| for the padded type built to support a specified size or alignment. |
| |
| 2011-03-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment. |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer |
| unconditionally to the end of the unit when the designated type is |
| limited_with'ed. |
| <all>: Rename local variable. Attempt to un-defer types only and do it |
| for limited_with'ed types as well. |
| (finalize_from_with_types): Adjust comment. Rename variable and tidy. |
| * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT |
| consistently and remove redundant call to finalize_from_with_types. |
| |
| 2011-03-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to |
| subprograms without a previous spec declared in the same unit. |
| * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined |
| subprograms at the end of the unit instead of at the beginning. |
| * gcc-interface/utils.c (create_subprog_decl): Check that the entity |
| isn't public for the special handling of non-inline functions nested |
| inside inline external functions. |
| |
| 2011-03-25 Jeff Law <law@redhat.com> |
| |
| * gcc-interface/utils.c (def_fn_type): Add missing va_end. |
| |
| 2011-03-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.ads (Size_Depends_On_Discriminant): Adjust description. |
| * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure |
| to compute Set_Size_Depends_On_Discriminant. |
| (Layout_Type): Call it on array types in back-end layout mode. |
| * sem_util.adb (Requires_Transient_Scope): Return true for array |
| types only if the size depends on the value of discriminants. |
| * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS |
| type if the RHS is a call to a function that returns an unconstrained |
| type with default discriminant. |
| |
| 2011-03-24 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of |
| non-conversion to the nominal result type at the end. |
| |
| 2011-03-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (create_temporary): New function taken from... |
| (create_init_temporary): ...here. Call it. |
| (call_to_gnu): Create the temporary for the return value early, if any. |
| Create it for a function with copy-in/copy-out parameters if there is |
| no target; in other cases of copy-in/copy-out, use another temporary. |
| Push the new binding level lazily. Add and rename local variables. |
| |
| 2011-03-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (validate_size): Improve comments and tweak |
| error message. |
| (set_rm_size): Likewise. |
| |
| 2011-03-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL |
| for the padded type built in order to support a specified alignment. |
| Fix incorrect formatting. |
| |
| 2011-03-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR bootstrap/48216 |
| * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL. |
| |
| 2011-03-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (components_to_record): Add REORDER parameter, |
| rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter |
| to the end of the list. Adjust recursive call. Rename local variable. |
| If REORDER is true, reorder components of the record type. |
| (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to |
| components_to_record and adjust the parameter list. |
| |
| 2011-03-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (elaborate_expression_1): When optimization is |
| disabled, use the variable for bounds of loop iteration scheme. |
| |
| 2011-03-21 Kai Tietz <ktietz@redhat.com> |
| |
| PR target/12171 |
| * gcc-interface/utils.c (gnat_internal_attribute_table): Add column. |
| |
| 2011-03-17 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c (elaborate_expression_1): Try harder to find |
| out whether the expression is read-only. Short-circuit placeholder |
| case and rename a couple of local variables. |
| |
| 2011-03-17 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (smaller_form_type_p): Declare. |
| * gcc-interface/trans.c (smaller_form_type_p): Make global and move... |
| * gcc-interface/utils.c (smaller_form_type_p): ...to here. |
| (convert): Deal with conversions from a smaller form type specially. |
| |
| 2011-02-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and |
| its argument, except for the special -I- switch. |
| |
| 2011-02-12 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * gnat_ugn.texi (Compiling Different Versions of Ada): Update link to |
| "Ada Issues". |
| |
| 2011-02-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs. |
| |
| 2011-02-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of |
| GNAT_FORMAL. |
| * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to... |
| * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE |
| instead of GNAT_FORMAL. Protect the expression against multiple uses. |
| Do not generate the check directly, instead instantiate the template |
| check present in the descriptor. |
| (make_descriptor_field): Move around. |
| (build_vms_descriptor32): Build a template check in the POINTER field. |
| (build_vms_descriptor): Remove useless suffixes. |
| * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call. |
| |
| 2011-01-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR bootstrap/47467 |
| * targext.c: Include target files if IN_RTS is defined. |
| |
| 2011-01-26 Richard Guenther <rguenther@suse.de> |
| |
| PR bootstrap/47467 |
| * targext.c: Include config.h. |
| * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H) |
| dependency. |
| |
| 2011-01-04 Pascal Obry <obry@adacore.com> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit. |
| |
| 2011-01-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the |
| end-of-case on the end label and its associated gotos, if any. |
| |
| 2011-01-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the |
| expressions of the parameter cache within the statement group of |
| the CICO mechanism. |
| |
| 2011-01-04 Olivier Hainque <hainque@adacore.com> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default. |
| (set_end_locus_from_node): New function. |
| (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we |
| make and the function end_locus. |
| (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus |
| for the elaboration subprogram. |
| (set_gnu_expr_location_from_node) <default case>: Use it to attempt to |
| set the end_locus of the expression as well. |
| |
| 2011-01-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/47131 |
| * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make |
| variables that are referenced in exception handlers volatile. |
| |
| |
| |
| Copyright (C) 2011 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. |