aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/restrict.adb
AgeCommit message (Collapse)AuthorFilesLines
2014-01-22[multiple changes]Arnaud Charlet1-1/+5
2014-01-22 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): A subprogram body generated for an expression function within a protected body needs a set of renaming declarations if the expression function comes from source. 2014-01-22 Ed Schonberg <schonberg@adacore.com> * lib-xref.adb (Get_Type_Reference): In semantics-only mode, list interface progenitor of a tagged concurrent type, for better source navigation. 2014-01-22 Robert Dewar <dewar@adacore.com> * lib.adb (In_Extended_Main_Code_Unit): Return False for Standard_Location. (In_Extended_Main_Source_Unit): Return False for Standard_Location. * lib.ads (In_Extended_Main_Code_Unit): Add documentation on treatment of Slocs No_Location and Standard_Location. * restrict.adb (Check_Restriction_No_Dependence): Explicitly check for entity with Standard_Location Sloc, rather than relying on Lib routines to do that. * sem_res.adb (Resolve_Call): Implement SPARK_05 restriction that a call cannot occur before a later occuring body within the same unit. From-SVN: r206931
2014-01-20[multiple changes]Arnaud Charlet1-0/+2
2014-01-20 Robert Dewar <dewar@adacore.com> * checks.adb: Make warnings on exceptions into errors in GNATprove mode. * errout.adb: Implement [ and ] insertion characters. * errout.ads: Document new [ and ] insertion characters. * sem_ch12.adb, restrict.adb, frontend.adb, exp_ch7.adb: Minor addition of ??? comment. * lib-xref.adb, exp_util.adb, gnat1drv.adb: Minor reformatting * exp_ch4.adb, sem_ch3.adb, sem_ch4.adb, sem_ch6.adb, sem_elab.adb, sem_eval.adb, sem_res.adb, sem_util.adb, sem_attr.adb, sem_aggr.adb: Make warnings on exceptions into errors in GNATprove mode. * sem_dim.adb: Minor reformatting throughout Quote [ and ] in error messages. 2014-01-20 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb: Code clean up. From-SVN: r206841
2014-01-202014-01-20 Yannick Moy <moy@adacore.com>Yannick Moy1-1/+1
* adabkend.adb, ali-util.adb, errout.adb, exp_ch7.adb, * exp_dbug.adb, freeze.adb, lib-xref.adb, restrict.adb, * sem_attr.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, * sem_prag.adb, sem_res.adb, sem_util.adb Rename SPARK_Mode into GNATprove_Mode. * sem_ch13.adb: Remove blank. * exp_spark.adb, exp_spark.ads (Expand_SPARK_Call): Only replace subprograms by alias for renamings, not for inherited primitive operations. * exp_util.adb (Expand_Subtype_From_Expr): Apply the expansion in GNATprove mode. (Remove_Side_Effects): Apply the removal in GNATprove mode, for the full analysis of expressions. * expander.adb (Expand): Call the light SPARK expansion in GNATprove mode. (Expander_Mode_Restore, Expander_Mode_Save_And_Set): Ignore save/restore actions for Expander_Active flag in GNATprove mode, similar to what is done in ASIS mode. * frontend.adb (Frontend): Generic bodies are instantiated in GNATprove mode. * gnat1drv.adb (Adjust_Global_Switches): Set operating mode to Check_Semantics in GNATprove mode, although a light expansion is still performed. (Gnat1drv): Set Back_End_Mode to Declarations_Only in GNATprove mode, and later on special case the GNATprove mode to continue analysis anyway. * lib-writ.adb (Write_ALI): Always generate ALI files in GNATprove mode. * opt.adb, opt.ads (Full_Expander_Active): Make it equivalent to Expander_Active. (SPARK_Mode): Renamed as GNATprove_Mode. * sem_aggr.adb (Aggregate_Constraint_Checks): Add checks in the tree in GNATprove_Mode. * sem_ch12.adb (Analyze_Package_Instantiation): Always instantiate body in GNATprove mode. (Need_Subprogram_Instance_Body): Always instantiate body in GNATprove mode. * sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl): Make sure side effects are removed in GNATprove mode. From-SVN: r206805
2013-10-10[multiple changes]Arnaud Charlet1-1/+22
2013-10-10 Robert Dewar <dewar@adacore.com> * par-ch6.adb (Check_Junk_Semicolon_Before_Return): Remove junk code. 2013-10-10 Javier Miranda <miranda@adacore.com> * sem_ch13.adb (Freeze_Entity_Checks): Avoid loosing errors on CPP entities in -gnatc mode. 2013-10-10 Robert Dewar <dewar@adacore.com> * sem_ch5.adb (Analyze_If_Statement): Only diagnose redundant if from source. 2013-10-10 Robert Dewar <dewar@adacore.com> * restrict.adb (Check_SPARK_Restriction): Refine test (don't automatically go to the original node). * sem_ch11.adb (Analyze_Raise_Statement): Only raise statements that come from source violate SPARK restrictions. (Analyze_Raise_xxx_Error): Same fix. * sem_ch3.adb (Analyze_Object_Declaration): Check OK SPARK initialization on original node, not on possibly rewritten expression. * sem_ch4.adb (Analyze_If_Expression): Only if expressions that come from source violate SPARK mode restrictions. 2013-10-10 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Fix confusing documentation for -gnatyM. From-SVN: r203374
2013-07-08[multiple changes]Arnaud Charlet1-63/+84
2013-07-08 Robert Dewar <dewar@adacore.com> * sem.ads: Minor comment updates. * s-restri.ads, exp_ch6.adb, lib-load.ads, exp_ch3.adb, sem_ch10.adb: Minor reformatting. 2013-07-08 Robert Dewar <dewar@adacore.com> * exp_attr.adb (Expand_N_Attribute_Reference): Add dummy entry for Restriction_Set. * gnat_rm.texi: Add missing menu entry for Attribute Ref Add documentation for attribute Restriction_Set. * lib-writ.adb (Write_With_Lines): Generate special W lines for Restriction_Set. * lib-writ.ads: Document special use of W lines for Restriction_Set. * lib.ads (Restriction_Set_Dependences): New table. * par-ch4.adb (Is_Parameterless_Attribute): Add Loop_Entry to list (Scan_Name_Extension_Apostrophe): Remove kludge test for Loop_Entry (Scan_Name_Extension_Apostrophe): Handle No_Dependence for Restricton_Set. * restrict.adb (Check_SPARK_Restriction): Put in Alfa order (OK_No_Dependence_Unit_Name): New function. * restrict.ads (OK_No_Dependence_Unit_Name): New function. * rtsfind.adb: Minor reformatting Minor code reorganization. * sem_attr.adb (Analyze_Attribute): Add processing for Restriction_Set. * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Remove Check_Unit_Name and use new function OK_No_Dependence_Unit_Name instead. * sinfo.ads: Minor comment updates. * snames.ads-tmpl: Add entry for Restriction_Set attribute. 2013-07-08 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Apply_Accessibility_Check): Remove local constant Pool_Id and local variable Free_Stmt. Do not deallocate the faulty object as "free" is not available on all targets/profiles. 2013-07-08 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Storage_Size aspect for task type in case discriminant is referenced. (Analyze_Attribute_Definition_Clause): Do not flag Storage_Size attribute definition clause as obsolescent if from aspect. From-SVN: r200771
2013-07-08[multiple changes]Arnaud Charlet1-11/+7
2013-07-08 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Add documentation for Img returning a function. * par-prag.adb: Minor reformatting. * restrict.adb: Minor reformatting and code reorganization. 2013-07-08 Ed Schonberg <schonberg@adacore.com> * sem_res.adb: add guard to ASIS transform. From-SVN: r200769
2013-07-08[multiple changes]Arnaud Charlet1-2/+34
2013-07-08 Robert Dewar <dewar@adacore.com> * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): Recognize SPARK_05 as synonym for SPARK in restrictions pragma. * restrict.ads, restrict.adb (SPARK_Hides): Table moved to body, only referenced there. * scng.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch8.adb, sem_res.adb, sem_util.adb: Use restriction SPARK_05 instead of SPARK. * snames.ads-tmpl (Name_No_Obsolescent_Features): New entry. 2013-07-08 Vincent Celier <celier@adacore.com> * gnatcmd.adb (Check_Files): Use a response file for gnatls when possible. From-SVN: r200764
2013-07-08[multiple changes]Arnaud Charlet1-9/+21
2013-07-08 Gary Dismukes <dismukes@adacore.com> * freeze.adb: Minor typo fixes. 2013-07-08 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document SPARK_05 (replaces SPARK) Document obsolete recognition of SPARK Document all other obsolete synonyms for old restrictions. * restrict.adb (Check_SPARK_Restriction): SPARK_05 replaces SPARK (Process_Restriction_Synonyms): Handle SPARK as synonym for SPARK_05. * restrict.ads: Restriction SPARK_05 replaces SPARK. * s-rident.ads: Replace restriction SPARK by SPARK_05 Add SPARK as synonym for SPARK_05. * sem_prag.adb: Minor reformatting. * snames.ads-tmpl: Add entries for Name_SPARK and Name_SPARK_05. From-SVN: r200763
2013-04-24adabkend.adb, [...]: Everything with name 'Alfa' renamed in 'SPARK'.Yannick Moy1-2/+2
2013-04-24 Yannick Moy <moy@adacore.com> * adabkend.adb, ali-util.adb, ali.adb, debug.adb, errout.adb, errout.ads, erroutc.adb, exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_dbug.adb, exp_util.adb, expander.adb, freeze.adb, gnat1drv.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads, opt.adb, opt.ads, restrict.adb, sem_aggr.adb, sem_attr.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_eval.adb, sem_prag.adb, sem_res.adb, sem_util.adb: Everything with name 'Alfa' renamed in 'SPARK'. Update comments. Renaming of units with name 'Alfa', renamed with 'SPARK' instead. * exp_alfa.adb: renamed exp_spark.adb. * exp_alfa.ads: renamed exp_spark.ads. * get_alfa.adb: renamed get_spark_xrefs.adb. * get_alfa.ads: renamed get_spark_xrefs.ads. * lib-xref-alfa.adb: renamed lib-xref-spark_specific.adb. * put_alfa.adb: renamed put_spark_xrefs.adb. * put_alfa.ads: renamed put_spark_xrefs.ads. * alfa.adb: renamed spark_xrefs.adb. * alfa.ads: renamed spark_xrefs.ads. * alfa_test.adb: renamed spark_xrefs_test.adb. From-SVN: r198234
2013-04-12[multiple changes]Arnaud Charlet1-11/+13
2013-04-12 Robert Dewar <dewar@adacore.com> * checks.adb, sem_elab.adb, repinfo.adb, sem_ch4.adb, restrict.adb, restrict.ads: Minor reformatting. 2013-04-12 Ed Schonberg <schonberg@adacore.com> * lib-xref.adb: Retrieve original name of classwide type if any. 2013-04-12 Thomas Quinot <quinot@adacore.com> * exp_ch11.ads: Minor reformatting. From-SVN: r197910
2013-04-12s-rident.ads: Add various missing Ada 2012 restrictions...Ed Schonberg1-1/+125
2013-04-12 Ed Schonberg <schonberg@adacore.com> * s-rident.ads: Add various missing Ada 2012 restrictions: No_Access_Parameter_Allocators, No_Coextensions, No_Use_Of_Attribute, No_Use_Of_Pragma. * snames.ads-tmpl: Add corresponding names. * restrict.ads restrict.adb: Subprograms and data structures to handle aspects No_Use_Of_Attribute and No_Use_Of_Pragma. * sem_ch4.adb: Correct name of restrictions is No_Standard_Allocators_After_Elaboration. * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check violation of restriction No_Use_Of_Attribute. * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Set restrictions No_Use_Of_Pragma and No_Use_Of_Attribute. (Analyze_Pragma): Check violation of restriction No_Use_Of_Pragma. * sem_res.adb: Check restrictions No_Access_Parameter_Allocators and No_Coextensions. * bcheck.adb: Correct name of restrictions is No_Standard_Allocators_After_Elaboration. * gnatbind.adb: Correct name of restrictions is No_Standard_Allocators_After_Elaboration. From-SVN: r197907
2013-01-02[multiple changes]Arnaud Charlet1-5/+5
2013-01-02 Robert Dewar <dewar@adacore.com> * checks.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb, exp_disp.adb, exp_dist.adb, exp_intr.adb, exp_prag.adb, exp_util.adb, freeze.adb, gnat1drv.adb, inline.adb, layout.adb, lib-xref.adb, par-ch10.adb, par-labl.adb, par-load.adb, par-util.adb, restrict.adb, sem_ch13.adb, sem_ch4.adb, sem_ch6.adb, sem_dim.adb, sem_elab.adb, sem_res.adb, sem_warn.adb, sinput-l.adb: Add tags to warning messages. * sem_ch6.ads, warnsw.ads, opt.ads: Minor comment updates. 2013-01-02 Robert Dewar <dewar@adacore.com> * err_vars.ads: Minor comment fix. 2013-01-02 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb: Refine predicate. From-SVN: r194787
2013-01-02[multiple changes]Arnaud Charlet1-2/+2
2013-01-02 Thomas Quinot <quinot@adacore.com> * exp_prag.adb (Expand_Pragma_Check): The statements generated for the pragma must have the sloc of the pragma, not the sloc of the condition, otherwise this creates anomalies in the generated debug information that confuse coverage analysis tools. 2013-01-02 Thomas Quinot <quinot@adacore.com> * sem_ch13.adb: Minor reformatting. 2013-01-02 Arnaud Charlet <charlet@adacore.com> * g-excact.ads (Core_Dump): Clarify that this subprogram does not dump cores under Windows. 2013-01-02 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Primitive_Renamed_Operation): The prefixed view of a subprogram has convention Intrnnsic, and a renaming of a prefixed view cannot be the prefix of an Access attribute. 2013-01-02 Robert Dewar <dewar@adacore.com> * restrict.adb: Minor reformatting. From-SVN: r194782
2012-08-06[multiple changes]Arnaud Charlet1-2/+1
2012-08-06 Robert Dewar <dewar@adacore.com> * aspects.ads: Define Aspect_Id_Exclude_No_Aspect. * par-ch13.adb, restrict.adb: Use Aspect_Id_Exclude_No_Aspect to simplify code. 2012-08-06 Yannick Moy <moy@adacore.com> * gnat-style.texi: Update style guide for declarations. 2012-08-06 Yannick Moy <moy@adacore.com> * sem_attr.adb (Analyze_Attribute): In the case for 'Old, skip a special expansion which is not needed in Alfa mode. 2012-08-06 Yannick Moy <moy@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): Do not perform an expansion of the iterator in Alfa mode. From-SVN: r190159
2012-07-12[multiple changes]Arnaud Charlet1-5/+5
2012-07-12 Robert Dewar <dewar@adacore.com> * s-atopri.adb, s-atopri.ads: Minor reformatting. 2012-07-12 Robert Dewar <dewar@adacore.com> * ali.adb: Add circuitry to read new named form of restrictions lines. * debug.adb: Add doc for new -gnatd.R switch (used positional notation for output of restrictions data in ali file). * lib-writ.adb: Implement new named format for restrictions lines. * lib-writ.ads: Add documentation for new named format for restrictions in ali files. * restrict.adb, restrict.ads, sem_prag.adb: Update comments. * rident.ads: Go back to withing System.Rident * s-rident.ads: Add extensive comment on dealing with consistency checking. 2012-07-12 Thomas Quinot <quinot@adacore.com> * par_sco.adb, scos.ads: Emit detailed SCOs for SELECT statements. From-SVN: r189438
2012-07-09[multiple changes]Arnaud Charlet1-1/+1
2012-07-09 Thomas Quinot <quinot@adacore.com> * einfo.adb (Set_Reverse_Storage_Order): Update assertion, flag is now valid for array types as well. 2012-07-09 Tristan Gingold <gingold@adacore.com> * tracebak.c: Implement __gnat_backtrace for Win64 SEH. 2012-07-09 Robert Dewar <dewar@adacore.com> * einfo.ads: Minor reformatting. 2012-07-09 Javier Miranda <miranda@adacore.com> * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Handle as renaming_as_body renamings of predefined dispatching equality and unequality operators. 2012-07-09 Robert Dewar <dewar@adacore.com> * rident.ads: Do not instantiate r-ident.ads, this is now an independent unit. 2012-07-09 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Write_DT): Avoid runtime crash of this debugging routine. * sem_disp.adb (Find_Dispatching_Time): Protect this routine against partially decorated entities. 2012-07-09 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Check_Size): Reject a size clause that specifies a value greater than Int'Last for a scalar type. 2012-07-09 Vincent Pucci <pucci@adacore.com> * sem_ch9.adb (Allows_Lock_Free_Implementation): type must support atomic operation moved to the protected body case. No non-elementary out parameter moved to the protected declaration case. Functions have only one lock-free restriction. (Analyze_Protected_Type_Declaration): Issue a warning when Priority given with Lock_Free. 2012-07-09 Vincent Pucci <pucci@adacore.com> * sem_dim.adb: Grammar of aspect Dimension fixed. 2012-07-09 Vincent Pucci <pucci@adacore.com> * freeze.adb (Freeze_Record_Type): Code reorg in order to avoid pushing and popping the scope stack whenever a delayed aspect occurs. 2012-07-09 Gary Dismukes <dismukes@adacore.com> * s-os_lib.ads: Remove pragma Elaborate_Body, as this is now unnecessary due to recently added pragma Preelaborate. 2012-07-09 Jose Ruiz <ruiz@adacore.com> * s-taprop-mingw.adb (Set_Priority): Remove the code that was previously in place to reorder the ready queue when a task drops its priority due to the loss of inherited priority. From-SVN: r189377
2012-02-17[multiple changes]Arnaud Charlet1-1/+10
2012-02-17 Yannick Moy <moy@adacore.com> * gnat_rm.texi: Minor shuffling. 2012-02-17 Ed Schonberg <schonberg@adacore.com> * aspects.adb: Expression functions can carry pre/postconditions. * par-ch6.adb (P_Subprogram): look for optional pre/postconditions in an expression function. * sem_prag (Check_Precondition_Postcondition): legal on expression functions. 2012-02-17 Vincent Pucci <pucci@adacore.com> * a-cdlili.adb, a-cidlli.adb, a-cihama.adb, a-cimutr.adb, * a-ciorma.adb, a-cohama.adb, a-coinve.adb, a-comutr.adb, * a-convec.adb, a-coorma.adb (Adjust): New routine. (Constant_Reference): Increment Busy and Lock counters. (Reference): Increase Busy and Lock counters. (Finalize): New routine. * a-cihase.adb, a-ciorse.adb, a-cohase.adb, a-coorse.adb: (Adjust): New routine. (Constant_Reference): Increment Busy and Lock counters. (Finalize): New routine. * a-cdlili.ads, a-cidlli.ads, a-cihama.ads, a-cihase.ads, * a-cimutr.ads, a-ciorma.ads, a-ciorse.ads, a-cohama.ads, * a-cohase.ads, a-coinve.ads, a-comutr.ads, a-convec.ads, * a-coorma.ads, a-coorse: Controlled component added to the reference types. 2012-02-17 Robert Dewar <dewar@adacore.com> * restrict.adb (Check_Restriction): Add special handling for No_Obsolescent_Features. 2012-02-17 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Find_Finalize_Address): When dealing with an internally built full view for a type with unknown discriminants, use the original record type. From-SVN: r184341
2011-11-21frontend.adb (Frontend): Capture restrictions from config filesRobert Dewar1-19/+56
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. From-SVN: r181566
2011-11-21sem_ch6.adb (Is_Public_Subprogram_For): New procedureArnaud Charlet1-0/+72
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. From-SVN: r181563
2011-09-19[multiple changes]Arnaud Charlet1-13/+87
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. From-SVN: r178959
2011-08-31[multiple changes]Arnaud Charlet1-2/+2
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. From-SVN: r178365
2011-08-31[multiple changes]Arnaud Charlet1-2/+2
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. 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. From-SVN: r178358
2011-08-05[multiple changes]Arnaud Charlet1-1/+1
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. From-SVN: r177434
2011-08-05[multiple changes]Arnaud Charlet1-4/+5
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. From-SVN: r177432
2011-08-03[multiple changes]Arnaud Charlet1-4/+11
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. From-SVN: r177246
2011-08-03[multiple changes]Arnaud Charlet1-5/+5
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. From-SVN: r177243
2011-08-02Minor reformatting.Arnaud Charlet1-1/+1
From-SVN: r177192
2011-08-02[multiple changes]Arnaud Charlet1-0/+42
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. From-SVN: r177179
2011-08-02einfo.adb, einfo.ads (Body_Is_In_ALFA, [...]): get/set for new flag denoting ↵Yannick Moy1-1/+1
which subprogram bodies are in ALFA 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. From-SVN: r177177
2011-08-02sem_aggr.adb, [...]: cleanup of SPARK modeYannick Moy1-9/+4
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 From-SVN: r177175
2011-08-02errout.adb (First_Node): minor renamingYannick Moy1-7/+3
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. From-SVN: r177155
2011-08-02[multiple changes]Arnaud Charlet1-5/+5
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. From-SVN: r177152
2011-08-02[multiple changes]Arnaud Charlet1-10/+60
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. From-SVN: r177151
2011-08-02[multiple changes]Arnaud Charlet1-0/+7
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. From-SVN: r177135
2011-08-02par-ch6.adb: Correct obsolete name in commentsYannick Moy1-0/+12
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 From-SVN: r177125
2011-08-02[multiple changes]Arnaud Charlet1-0/+13
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. From-SVN: r177102
2010-10-07gnat_rm.texi, [...]: Change spelling parametrize(d) => parameterize(d).Robert Dewar1-1/+1
2010-10-07 Robert Dewar <dewar@adacore.com> * gnat_rm.texi, exp_util.adb, sinfo.adb, sinfo.ads, sem_ch12.adb, sem.adb, gnat_ugn.texi, sem_util.ads, par-ch6.adb, targparm.ads, restrict.adb, sem_ch6.adb, sem_ch6.ads, sprint.adb, i-c.ads: Change spelling parametrize(d) => parameterize(d). From-SVN: r165103
2010-09-09sem_ch13.adb, [...]: Minor reformatting.Robert Dewar1-5/+14
2010-09-09 Robert Dewar <dewar@adacore.com> * sem_ch13.adb, sem_ch6.adb, exp_ch3.adb: Minor reformatting. 2010-09-09 Robert Dewar <dewar@adacore.com> * einfo.adb (Is_Aggregate_Type): New function. * einfo.ads (Aggregate_Kind): New enumeration subtype (Is_Aggregate_Type): New function. * sem_type.adb (Is_Array_Class_Record_Type): Removed, replaced by Is_Aggregate_Typea. 2010-09-09 Robert Dewar <dewar@adacore.com> * exp_ch11.adb, frontend.adb, sem_attr.adb, sem_ch10.adb, sem_ch3.adb, sem_ch4.adb, sem_ch9.adb, sem_res.adb: Use Restriction_Check_Needed where appropriate. * restrict.ads, restrict.adb: Ditto. (Restriction_Check_Needed): New function From-SVN: r164061
2010-09-09nlists.ads, nlists.adb (In_Same_List): New function.Robert Dewar1-0/+24
2010-09-09 Robert Dewar <dewar@adacore.com> * nlists.ads, nlists.adb (In_Same_List): New function. Use Node_Or_Entity_Id where appropriate. * par-labl.adb, sem_ch6.adb, sem_type.adb: Use In_Same_List. 2010-09-09 Robert Dewar <dewar@adacore.com> * restrict.ads, restrict.adb (Check_Wide_Character_Restriction): New procedure. * sem_ch3.adb: Use Check_Wide_Character_Restriction (Enumeration_Type_Declaration): Check violation of No_Wide_Characters * sem_ch8.adb (Find_Direct_Name): Check violation of No_Wide_Characters (Find_Expanded_Name): Check violation of No_Wide_Characters 2010-09-09 Robert Dewar <dewar@adacore.com> * par-ch5.adb: Minor reformatting. From-SVN: r164056
2010-08-10a-chahan.ads: Add comments on handling of obsolescent entries.Robert Dewar1-0/+41
2010-08-10 Robert Dewar <dewar@adacore.com> * a-chahan.ads: Add comments on handling of obsolescent entries. * opt.ads: Add Ada_2005 and Ada_2012 renamings for versions. * restrict.adb (Check_Obsolescent_2005_Entity): New procedure. * restrict.ads (Check_Obsolescent_2005_Entity): New procedure. * sem_attr.adb (Analyze_Access_Attribute): Call Check_Obsolescent_2005_Entity to check for access to obsolescent Ada.Characters.Handling subprogram. (Analyze_Attribute, case Class): Applying Class to untagged incomplete type is obsolescent in Ada 2005. (Analyze_Attribute, case Constrained): Better placement of flag when flagged as obsolescent feature. (Analyze_Attribute, case Storage_Size): Use with tasks is obsolescent * sem_ch10.adb (Analyze_With_Clause): With of renamings such as Text_IO is an obsolescent feature. * sem_ch11.adb (Analyze_Raise_Statement): Numeric_Error is obsolescent feature. * sem_ch8.adb (Analyze_Subprogram_Renaming): Call Check_Obsolescent_2005_Entity to check for renaming obsolete Ada.Characters.Handling subprogram. * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Check for obsolescent restrictions in Ada 2005. (Analyze_Pragma, case Suppress): Entity arg is obsolescent in Ada 2005 (Analyze_Pragma, case Interface): Interface is obsolescent in Ada 2005 * sem_res.adb (Resolve_Call): Call Check_Obsolescent_2005_Entity to check for obsolescent references to Ada.Characters.Handling subprograms 2010-08-10 Robert Dewar <dewar@adacore.com> * einfo.adb, einfo.ads: Fix bad -gnatdt output for incomplete type. 2010-08-10 Robert Dewar <dewar@adacore.com> * errout.ads: Add VMS table entries for 2005, 12, 2012 switches * par-ch4.adb: Change wording of Ada 2012 messages * vms_data.ads: Add VMS entries for /2005, /12, /2012 From-SVN: r163063
2010-06-23[multiple changes]Arnaud Charlet1-0/+8
2010-06-23 Robert Dewar <dewar@adacore.com> * sem_ch5.adb (Process_Bounds): Remove some junk initializations. * sem_res.adb: Add comments. * sem_util.adb: Minor reformatting. Add comments. Change increment on Actuals_In_Call table. * opt.ads: Minor: add 'constant'. 2010-06-23 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Make_DT): Initialize the Size_Func component of the TSD to Null_Address if No_Dispatching_Calls is active. 2010-06-23 Vincent Celier <celier@adacore.com> * a-comlin.ads: Indicate that use of this package is not supported during the elaboration of an auto-initialized Stand-Alone Library. 2010-06-23 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Is_Possibly_Misaligned_Object): Do not rely on an alignment clause on a record type to determine if a component may be misaligned. The decision must be taken in the back-end where target alignment information is known. 2010-06-23 Arnaud Charlet <charlet@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Enable some restrictions systematically in CodePeer mode to simplify generated code. * restrict.adb (Check_Restriction): Do nothing in CodePeer mode. * exp_ch4.adb (Expand_N_Allocator): Generate proper code when No_Task_Hierarchy is set instead of crasshing. From-SVN: r161265
2010-06-18par-labl.adb, [...]: Fix copyright notices.Arnaud Charlet1-1/+1
* par-labl.adb, restrict.adb, s-osinte-hpux-dce.ads, sem_ch11.adb, exp_pakd.adb, s-filofl.ads, par-endh.adb, exp_intr.adb, sem_cat.adb, sem_case.adb, exp_ch11.adb: Fix copyright notices. From-SVN: r160982
2009-04-17[multiple changes]Arnaud Charlet1-0/+9
2009-04-17 Thomas Quinot <quinot@adacore.com> * exp_ch7.adb: Minor reformatting 2009-04-17 Robert Dewar <dewar@adacore.com> * restrict.adb (Check_Restriction_No_Dependence): Don't check restriction if outside main extended source unit. * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction for parents of child units as well as the child unit itself. 2009-04-17 Bob Duff <duff@adacore.com> * checks.ads: Minor comment fix * exp_aggr.ads: Minor comment fix 2009-04-17 Nicolas Roche <roche@adacore.com> * adaint.c: Improve cross compiler detection and handling. From-SVN: r146236
2009-04-16exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic actual ↵Thomas Quinot1-4/+1
type... 2009-04-16 Thomas Quinot <quinot@adacore.com> * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic actual type, use the base type to build the To_Any function. (Build_From_Any_Function): Remove junk, useless subtype conversion. 2009-04-16 Thomas Quinot <quinot@adacore.com> * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb, restrict.adb: Minor code reorganization (use Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand). From-SVN: r146166
2008-08-04restrict.adb: Improved messages for restriction warningsRobert Dewar1-83/+167
2008-08-04 Robert Dewar <dewar@adacore.com> * restrict.adb: Improved messages for restriction warnings * restrict.ads: Improved messages for restriction messages * s-rident.ads (Profile_Name): Add No_Profile From-SVN: r138575
2008-05-282008-05-28 Robert Dewar <dewar@adacore.com>Robert Dewar1-2/+11
* restrict.adb: (Check_Restriction): violation of restriction No_Finalization is treated as a serious error to stop expansion From-SVN: r136088
2008-04-10gnat_ugn.texi: Fix typos.Ralf Wildenhues1-3/+3
gcc/ada/ * gnat_ugn.texi: Fix typos. * raise-gcc.c, repinfo.adb, repinfo.ads, restrict.adb, restrict.ads, rtsfind.adb, rtsfind.ads, s-arit64.ads, s-asthan-vms-alpha.adb, s-auxdec.ads, s-casuti.ads, s-fatflt.ads, s-fatgen.adb, s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-filofl.ads, s-finimp.adb, s-finroo.ads, s-fishfl.ads, s-fvadfl.ads, s-fvaffl.ads, s-fvagfl.ads, s-hibaen.ads, s-htable.ads, s-imgcha.adb, s-imgenu.ads, s-imgint.adb, s-imgrea.adb, s-inmaop-dummy.adb, s-inmaop.ads, s-interr-vms.adb, s-interr-vxworks.adb, s-interr.adb, s-interr.ads, s-intman-vxworks.ads, s-intman.ads, s-mastop-irix.adb, s-os_lib.adb, s-os_lib.ads, s-osinte-aix.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads, s-osinte-hpux.ads, s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.ads, s-osinte-rtems.ads, s-osinte-solaris-posix.ads, s-osprim-mingw.adb, s-osprim-vms.adb, s-parame-ae653.ads, s-parame-hpux.ads, s-parame-vms-alpha.ads, s-parame-vms-ia64.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads, s-parame.ads, s-parint.adb, s-parint.ads, s-poosiz.adb, s-proinf-irix-athread.ads, s-proinf.ads, s-regexp.adb, s-regpat.adb, s-regpat.ads, s-rident.ads: Fix comment typos. From-SVN: r134177
2008-03-26exp_ch11.adb (Expand_At_End_Handler): Set From_At_End flag on raise stmt.Robert Dewar1-0/+13
2008-03-26 Robert Dewar <dewar@adacore.com> Arnaud Charlet <charlet@adacore.com> * exp_ch11.adb (Expand_At_End_Handler): Set From_At_End flag on raise stmt. (No_Exception_Propagation_Active): New function. (Expand_Exception_Handlers): Use No_Exception_Propagation_Active. Update comments, and review all uses of No_Exception_Propagation, which are now correct and in sync with what gigi expects. * restrict.ads, restrict.adb (No_Exception_Propagation_Active): New function. (Expand_Exception_Handlers): Use No_Exception_Propagation_Active. Update comments, and review all uses of No_Exception_Propagation, which are now correct and in sync with what gigi expects. From-SVN: r133560
2007-12-13restrict.ads, [...] (Check_Implicit_Dynamic_Code_Allowed): New procedure to ↵Bob Duff1-11/+10
be called from the back end to check the... 2007-12-06 Bob Duff <duff@adacore.com> * restrict.ads, restrict.adb (Check_Implicit_Dynamic_Code_Allowed): New procedure to be called from the back end to check the No_Implicit_Dynamic_Code restriction. From-SVN: r130847
2007-09-12types.ads, [...]: Minor reformatting.Robert Dewar1-0/+11
2007-09-12 Robert Dewar <dewar@adacore.com> * types.ads, a-charac.ads, freeze.adb: Minor reformatting. * a-except.adb, g-hesora.adb, g-speche.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb, s-assert.adb, s-carun8.adb, s-casuti.adb, s-crc32.adb, s-exctab.adb, s-htable.adb, s-imgenu.adb, s-mastop.adb, s-memory.adb, s-memory.ads, s-secsta.adb, s-soflin.adb, s-sopco3.adb, s-sopco4.adb, s-sopco5.adb, s-stache.adb, s-stalib.adb, s-stoele.adb, s-strcom.adb, s-strops.adb, s-traceb.adb, s-traent.adb, s-wchcnv.adb, s-wchcon.adb, s-wchjis.adb, s-addope.adb, s-except.adb, s-os_lib.adb, s-string.adb, s-utf_32.adb, a-chlat1.ads, a-elchha.ads, a-except.ads, g-hesora.ads, g-htable.ads, g-speche.ads, par-prag.adb, restrict.adb, restrict.ads, s-assert.ads, s-carun8.ads, s-casuti.ads, s-crc32.ads, sem_ch11.adb, sem_prag.adb, s-exctab.ads, s-htable.ads, s-imgenu.ads, s-mastop.ads, snames.adb, snames.ads, snames.h, s-purexc.ads, s-secsta.ads, s-soflin.ads, s-sopco3.ads, s-sopco4.ads, s-sopco5.ads, s-stache.ads, s-stalib.ads, s-stoele.ads, s-strcom.ads, s-strops.ads, s-traceb.ads, s-traent.ads, s-unstyp.ads, s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-addope.ads, s-except.ads, s-os_lib.ads, s-string.ads, s-utf_32.ads: Implement pragma Compiler_Unit and adds it to relevant library units. From-SVN: r128426