aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/prj-env.adb
AgeCommit message (Collapse)AuthorFilesLines
2017-09-06[multiple changes]Arnaud Charlet1-2429/+0
2017-09-06 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch3.adb, sem_aux.adb, sem_res.adb: Minor reformatting. 2017-09-06 Yannick Moy <moy@adacore.com> * sem_ch12.adb (Analyze_Instance_And_Renamings): Refactor to set global variable Ignore_SPARK_Mode_Pragmas_In_Instance only once. 2017-09-06 Bob Duff <duff@adacore.com> * sem_ch8.adb: Change Assert to be consistent with other similar ones. 2017-09-06 Bob Duff <duff@adacore.com> * binde.adb (Find_Elab_Order): Do not run Elab_Old unless requested. Previously, the -do switch meant "run Elab_New and Elab_Old and use the order chosen by Elab_Old, possibly with debugging printouts comparing the two orders." Now it means "do not run Elab_New." This is of use if there are bugs that cause Elab_New to crash. (Elab_Position, Num_Chosen): Change type to Nat, to avoid various type conversions. * ali.ads (Elab_Position): Change type to Nat, to avoid various type conversions. 2017-09-06 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Check_Mode_Restriction_In_Enclosing_Context): Fix reference to SPARK RM. 2017-09-06 Eric Botcazou <ebotcazou@adacore.com> * layout.adb: Use SSU short hand consistently throughout the file. 2017-09-06 Eric Botcazou <ebotcazou@adacore.com> * freeze.adb (Freeze_Record_Type) <Sized_Component_Total_Round_RM_Size>: New local variable to accumulate the rounded RM_Size of components. Update it for every component whose RM_Size is statically known. Add missing guard to check that bit packing is really required before issuing the error about packing. Swap condition for clarity's sake. * sem_prag.adb (Usage_Error): fix reference to SPARK RM in comment 2017-09-06 Fedor Rybin <frybin@adacore.com> * makeutl.adb, makeutl.ads, mlib.adb, mlib.ads, mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb, mlib-tgt.ads, mlib-tgt-specific.adb, mlib-tgt-specific.ads, mlib-tgt-specific-aix.adb, mlib-tgt-specific-darwin.adb, mlib-tgt-specific-hpux.adb, mlib-tgt-specific-linux.adb, mlib-tgt-specific-mingw.adb, mlib-tgt-specific-solaris.adb, mlib-tgt-specific-vxworks.adb, mlib-tgt-specific-xi.adb, mlib-utl.adb, mlib-utl.ads, prj.adb, prj.ads, prj-attr.adb, prj-attr.ads, prj-attr-pm.adb, prj-attr-pm.ads, prj-com.ads, prj-conf.adb, prj-conf.ads, prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads, prj-err.adb, prj-err.ads, prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads, sinput-p.adb, sinput-p.ads: Remove obsolete project manager sources. 2017-09-06 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Assigment): If the left-hand side is an entity of a mutable type and the right-hand side is a conditional expression, resolve the alternatives of the conditional using the base type of the target entity, because the alternatives may have distinct subtypes. This is particularly relevant if the alternatives are aggregates. From-SVN: r251797
2017-01-13sem_aggr.adb, [...]: Update all eligible case statements to reflect the new ↵Hristian Kirtchev1-2/+5
style for case alternatives. 2017-01-13 Hristian Kirtchev <kirtchev@adacore.com> * sem_aggr.adb, par_sco.adb, s-osprim-mingw.adb, exp_ch5.adb, exp_prag.adb, sem_ch3.adb, xr_tabls.adb, lib-xref-spark_specific.adb, layout.adb, sem_dist.adb, exp_spark.adb, exp_ch7.adb, gnatcmd.adb, exp_util.adb, prj-proc.adb, sem_aux.adb, comperr.adb, g-memdum.adb, exp_attr.adb, s-intman-solaris.adb, exp_ch9.adb, make.adb, live.adb, g-sercom-linux.adb, sem_dim.adb, mlib-prj.adb, s-intman-posix.adb, sem_ch9.adb, sem_ch10.adb, prep.adb, einfo.adb, scng.adb, checks.adb, prj-strt.adb, sem_prag.adb, eval_fat.adb, sem_ch12.adb, sem.adb, a-numaux-x86.adb, a-stwifi.adb, i-cobol.adb, prj.adb, get_spark_xrefs.adb, s-tasini.adb, rtsfind.adb, freeze.adb, g-arrspl.adb, par-ch4.adb, sem_util.adb, sem_res.adb, expander.adb, sem_attr.adb, exp_dbug.adb, prj-pp.adb, a-stzfix.adb, s-interr.adb, s-wchcnv.adb, switch-m.adb, gnat1drv.adb, sinput-l.adb, stylesw.adb, contracts.adb, s-intman-android.adb, g-expect.adb, exp_ch4.adb, g-comlin.adb, errout.adb, sinput.adb, s-exctra.adb, repinfo.adb, g-spipat.adb, g-debpoo.adb, exp_ch6.adb, sem_ch4.adb, exp_ch13.adb, a-wtedit.adb, validsw.adb, pprint.adb, widechar.adb, makeutl.adb, ali.adb, set_targ.adb, sem_mech.adb, sem_ch6.adb, gnatdll.adb, get_scos.adb, g-pehage.adb, s-tratas-default.adb, gnatbind.adb, prj-dect.adb, g-socthi-mingw.adb, par-prag.adb, prj-nmsc.adb, exp_disp.adb, par-ch12.adb, binde.adb, sem_ch8.adb, s-tfsetr-default.adb, s-regexp.adb, gprep.adb, s-tpobop.adb, a-teioed.adb, sem_warn.adb, sem_eval.adb, g-awk.adb, s-io.adb, a-ztedit.adb, xoscons.adb, exp_intr.adb, sem_cat.adb, sprint.adb, g-socket.adb, exp_dist.adb, sem_ch13.adb, s-tfsetr-vxworks.adb, par-ch3.adb, treepr.adb, g-forstr.adb, g-catiio.adb, par-ch5.adb, uname.adb, osint.adb, exp_ch3.adb, prj-env.adb, a-strfix.adb, a-stzsup.adb, prj-tree.adb, s-fileio.adb: Update all eligible case statements to reflect the new style for case alternatives. Various code clean up and reformatting. From-SVN: r244406
2015-01-06[multiple changes]Arnaud Charlet1-1/+1
2015-01-06 Vincent Celier <celier@adacore.com> * prj-env.adb: Minor comment update. 2015-01-06 Javier Miranda <miranda@adacore.com> * sem_res.adb (Valid_Conversion): Restrict the checks on anonymous access types whose target type is an interface type to operands that are access types; required to report an error when the operand is not an access type. From-SVN: r219226
2015-01-06Minor reformatting.Arnaud Charlet1-3/+9
From-SVN: r219224
2015-01-06[multiple changes]Arnaud Charlet1-51/+78
2015-01-06 Robert Dewar <dewar@adacore.com> * s-taskin.ads, s-traces.ads: Minor reformatting. * exp_util.adb: Minor typo fix. 2015-01-06 Vincent Celier <celier@adacore.com> * gnatls.adb (Search_RTS): Invoke Initialize_Default_Project_Path with the runtime name. * prj-env.adb (Initialize_Default_Project_Path): When both Target_Name and Runtime_Name are not empty string, add to the project path the two directories .../lib/gnat and .../share/gpr related to the runtime. * prj-env.ads (Initialize_Default_Project_Path): New String parameter Runtime_Name, defaulted to the empty string. 2015-01-06 Hristian Kirtchev <kirtchev@adacore.com> * frontend.adb: Guard against the case where a configuration pragma may be split into multiple pragmas and the original rewritten as a null statement. * sem_prag.adb (Analyze_Pragma): Insert a brand new Check_Policy pragma using Insert_Before rather than Insert_Action. This takes care of the configuration pragma case where Insert_Action would fail. 2015-01-06 Bob Duff <duff@adacore.com> * a-coboho.ads (Element_Access): Add "pragma No_Strict_Aliasing (Element_Access);". This is needed because we are unchecked-converting from Address to Element_Access. * a-cofove.ads, a-cofove.adb (Elems,Elemsc): Fix bounds of the result to be 1. 2015-01-06 Hristian Kirtchev <kirtchev@adacore.com> * sem_res.adb (Resolve_Actuals): Remove the restriction which prohibits volatile actual parameters with enabled external propery Async_Writers to act appear in procedure calls where the corresponding formal is of mode OUT. From-SVN: r219222
2014-10-31[multiple changes]Arnaud Charlet1-1/+1
2014-10-31 Vincent Celier <celier@adacore.com> * prj-conf.adb (Look_For_Project_Paths): New procedure (Parse_Project_And_Apply_Config): Initially, parse the project files ignoring missing withs. If there are missing withs, extend the project path with directories rooted at the compiler roots, including directories rooted at the runtime roots, if there are non default runtimes, in the PATH orser. * prj-env.adb (Initialize_Default_Project_Path): Do not add any directory from the prefix if the target is "-". * prj-part.adb (Parse): Initialize the tables, as Parse may be call several times by gprbuild. * prj.adb (Update_Ignore_Missing_With): New procedure. 2014-10-31 Ed Schonberg <schonberg@adacore.com> * sem_aux.adb (First_Stored_Discriminant, Has_Completely_Hidden_Discriminant): When scanning the list of discriminants to locate possibly hidden (inherited) discriminants, ignore itypes that may appear in the entity list, when an access discriminants is constrained by an access attribute reference. 2014-10-31 Javier Miranda <miranda@adacore.com> * freeze.adb (Freeze_Record_Type): Add missing check to verify that all the primitives of an interface type are abstract or null procedures. 2014-10-31 Vincent Celier <celier@adacore.com> * s-os_lib.adb, s-os_lib.ads: New function Non_Blocking_Spawn that redirects standard output and standard error to two different files. 2014-10-31 Bob Duff <duff@adacore.com> * makeutl.ads: Minor comment fix. 2014-10-31 Arnaud Charlet <charlet@adacore.com> * system-linux-x86_64.ads, system-mingw-x86_64.ads (Word_Size, Memory_Size): Use Standard'Word_Size so that the value can be changed via a target configuration file. From-SVN: r216965
2014-10-20[multiple changes]Arnaud Charlet1-4/+2
2014-10-20 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, prj-proc.adb, sem_ch4.adb, prj-env.adb, lib.ads, sem_ch13.adb: Minor reformatting. 2014-10-20 Javier Miranda <miranda@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): Expand the declaration of a class-wide limited object containing an initializing expression into a renaming declaration. Required to avoid passing such declaration to the backend and also to avoid generating an extra copy. From-SVN: r216475
2014-10-20[multiple changes]Arnaud Charlet1-24/+1
2014-10-20 Eric Botcazou <ebotcazou@adacore.com> * inline.adb (List_Inlining_Info): Minor tweaks. (Add_Inlined_Body): Inline the enclosing package if it is not internally generated, even if it doesn't come from source. 2014-10-20 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Process_Function_Call): If the first actual denotes a discrete type, the mode must be interpreted as a slice of an array returned by a parameterless call. 2014-10-20 Vasiliy Fofanov <fofanov@adacore.com> * prj-env.ads, prj-env.adb (Get_Runtime_Path): No longer inhibit searching for runtime referenced by a simple name on a project path. 2014-10-20 Olivier Hainque <hainque@adacore.com> * vxworks-x86-link.spec: New file. * system-vxworks-x86.ads: Add pragma Linker_Options to link with vxworks-x86-link.spec. 2014-10-20 Vincent Celier <celier@adacore.com> * opt.ads (Origin_Of_Target): New type. (Target_Origin): New variable. * prj-conf.adb (Parse_Project_And_Apply_Config): Record Target_Value and Target_Origin. If target was not specified on the command line with --target=, check if attribute Target is declared in the main project. If it is and it is not the native target, parse again the projects so that 'Target get the new value. Fail if the target has changed again. Invoke Process_Project_And_Apply_Config with Do_Phase_1 set to False is Process_Project_Tree_Phase_1 has already been invoked. * prj-conf.ads (Process_Project_And_Apply_Config): New Boolean parameter Do_Phase_1, defaulted to True. * prj-proc.adb (Expression): Check the special values and defaults for attribute Target. 2014-10-20 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Handle_Late_Controlled_Primitive): Do not analyze the subprogram spec of the body in full, because it will be reanalyzed when the declaration itself is analyzed; otherwise. a formal may end up duplicated in the list of formals leading to spurious conformance errors with an existing declaration. From-SVN: r216473
2014-10-17[multiple changes]Arnaud Charlet1-7/+6
2014-10-17 Robert Dewar <dewar@adacore.com> * exp_ch9.adb (Expand_N_Task_Body): Add defense against previous errors. * freeze.adb (Freeze_Entity): Add defense against checking null scope for generic. * restrict.adb (Tasking_Allowed): Add test for No_Run_Time mode. * sem_ch13.adb (Freeze_Entity_Checks): Add defense against previous errors. * sem_ch9.adb (Analyze_Task_Type_Declaration): Give error if in No_Run_Time mode. 2014-10-17 Robert Dewar <dewar@adacore.com> * prj-makr.adb: Minor reformatting. 2014-10-17 Robert Dewar <dewar@adacore.com> * gnatcmd.adb, make.adb, prj-part.adb, gnatlink.adb, prj-nmsc.adb, prj-conf.adb, prj-env.adb: Use Is_Directory_Separator where possible. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * exp_prag.adb (Undo_Initialization): If Initialize_Scalars is enabled, code will be generated for some composite types to initialize an object after its declaration. If there is a subsequent Import pragma for the object, that code must be removed as specified byw the semantics of the pragma, and to prevent out-of-order elaboration issues in the back-end. 2014-10-17 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_N_Op_Concat): Keep concatenation operator wrapping mechanism under debug flag -gnatd.h. * debug.adb: Claim debug switch -gnatd.h. From-SVN: r216384
2014-08-01[multiple changes]Arnaud Charlet1-2/+2
2014-08-01 Robert Dewar <dewar@adacore.com> * hostparm.ads: Put back definition of OpenVMS as False to aid the transition process. * sem_ch7.adb: Minor reformatting. * prj-env.adb: Minor code fix. * gnat_rm.texi: Complete previous change. * sem_ch3.adb: Minor reformatting. * sem_ch6.adb: Minor reformatting. * sem_elab.adb: Minor reformatting. * exp_strm.adb: Complete previous change. 2014-08-01 Vincent Celier <celier@adacore.com> * sem_warn.adb (Warn_On_Unreferenced_Entity): Do not issue a warning when a constant is unreferenced and its type has pragma Unreferenced_Objects. 2014-08-01 Hristian Kirtchev <kirtchev@adacore.com> * einfo.adb: Flag2 is now known as Is_Hidden_Non_Overridden_Subprogram. (Is_Hidden_Non_Overridden_Subprogram): New routine. (Set_Is_Hidden_Non_Overridden_Subprogram): New routine. (Write_Entity_Fields): Output Flag2. * einfo.ads: New attribute Is_Hidden_Non_Overridden_Subprogram along with occurrences in entities. (Is_Hidden_Non_Overridden_Subprogram): New routine and pragma Inline. (Set_Is_Hidden_Non_Overridden_Subprogram): New routine and pragma Inline. * sem_ch7.adb (Install_Package_Entity): Do not enter implicitly declared non-overriden homographs into visibility. * sem_ch13.adb (Freeze_Entity_Checks): Hide all implicitly declared non-overriden homographs. (Hide_Non_Overridden_Subprograms): New routine. From-SVN: r213434
2014-08-01snames.ads-tmpl, [...]: Remove VMS-specific code.Robert Dewar1-0/+26
2014-08-01 Robert Dewar <dewar@adacore.com> * snames.ads-tmpl, s-os_lib.adb, s-os_lib.ads, s-fileio.adb: Remove VMS-specific code. * prj-conf.adb: Minor reformatting. * xr_tabls.adb (Read_File): Restore code which was enabled on non VMS platforms before. * prj-env.adb (Initialize_Default_Project_Path): Ditto. * sem_ch5.adb: Minor reformatting. * lib-writ.adb, lib-writ.ads, bindgen.adb, sem_vfpt.adb, sem_vfpt.ads, ali.adb, ali.ads, opt.ads, bcheck.adb, exp_strm.adb: Remove VMS-specific code. From-SVN: r213432
2014-08-01[multiple changes]Arnaud Charlet1-32/+0
2014-08-01 Vincent Celier <celier@adacore.com> * make.adb (Await_Compile): Remove loop that was only needed for VMS. 2014-08-01 Robert Dewar <dewar@adacore.com> * a-calcon.ads, a-direct.adb, a-dirval-mingw.adb, a-dirval.adb, a-dirval.ads, a-except-2005.adb, a-excpol-abort.adb, a-numaux-darwin.ads, a-numaux.ads, bindgen.adb, bindusg.adb, einfo.adb, einfo.ads, err_vars.ads, errout.ads, errutil.adb, exp_ch3.adb, exp_ch4.adb, exp_ch7.adb, exp_ch7.ads, fname-uf.adb, fname.adb, fname.ads, freeze.adb, g-debpoo.adb, g-dirope.ads, g-excact.ads, g-expect.ads, g-socket.adb, g-socket.ads, g-sothco.ads, g-traceb.ads, gnat_rm.texi, gnatlink.adb, gnatls.adb, i-cstrea.adb, krunch.adb, krunch.ads, layout.adb, lib-util.adb, make.adb, mlib.adb, osint-b.adb, osint-b.ads, osint-c.adb, osint.adb, osint.ads, output.ads, par.adb, prj-conf.adb, prj-env.adb, prj-makr.adb, prj-nmsc.adb, prj.adb, prj.ads, repinfo.adb, rtsfind.adb, rtsfind.ads, s-excmac-gcc.ads, s-fatgen.adb, s-mastop.ads, s-parame-ae653.ads, s-parame-hpux.ads, s-parame-vxworks.ads, s-parame.ads, s-soflin.ads, s-stoele.adb, s-tasini.adb, s-taspri-dummy.ads, s-taspri-hpux-dce.ads, s-taspri-mingw.ads, s-taspri-posix-noaltstack.ads, s-taspri-posix.ads, s-taspri-solaris.ads, s-taspri-vxworks.ads, s-trasym.ads, sem_ch12.adb, sem_ch4.adb, sem_eval.adb, sem_intr.adb, sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_res.adb, sem_util.adb, sem_util.ads, sinfo.adb, sinfo.ads, sinput-c.adb, symbols.ads, targparm.adb, treepr.adb, types.ads, xr_tabls.adb, xr_tabls.ads: Remove VMS specific code and comments. 2014-08-01 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): New procedure Check_Reverse_Iteration, to verify the legality of the Reverse indicator on various container types, and to detect illegal reverse iterations on containers that only supoort forward iteration. From-SVN: r213431
2014-07-30[multiple changes]Arnaud Charlet1-7/+4
2014-07-30 Olivier Hainque <hainque@adacore.com> * vxworks-ppc-link.spec: New file. Extra link instructions for ppc-vxworks. * vxworks-crtbe-link.spec: Likewise, for ZCX related support. * system-vxworks-ppc.ads: Adjust linker options to use spec files. * system-vxworks-arm.ads: Likewise. * gcc-interface/Makefile.in: Enable .spec files. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb: Minor comment reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * sem_util.ads, sem_util.adb (Is_Junk_Name): Removed. * sem_warn.adb (Has_Junk_Name): New function (Check_References): Use Has_Junk_Name to delete junk warnings (Check_Unset_Reference): ditto. (Warn_On_Unreferenced_Entity): ditto. (Warn_On_Useless_Assignment): ditto. * sem_ch3.adb, lib-xref-spark_specific.adb, s-taprop-vxworks.adb, exp_ch7.adb, s-asthan-vms-alpha.adb, sem_ch10.adb, osint-c.adb, prj.adb, g-comlin.adb, makeutl.adb, s-tasdeb.adb, exp_intr.adb, s-asthan-vms-ia64.adb, prj-env.adb: Ditto. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * checks.adb (Insert_Valid_Check): Do not check for the packed array type of a prefix that is an access type. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Eval_Attribute): Evaluate the GNAT attribute Unconstrained_Array even if prefix is not frozen yet, as can occur with a private subtype used as a generic actual. 2014-07-30 Gary Dismukes <dismukes@adacore.com> * sem_attr.adb: Minor reformatting. 2014-07-30 Pat Rogers <rogers@adacore.com> * gnat_rm.texi: Corrected minor wording error in description of No_Exception_Registration. 2014-07-30 Yannick Moy <moy@adacore.com> * einfo.ads, einfo.adb: New flag Is_Inlined_Always for use in GNATprove mode. Realphabetize two subprograms. * inline.adb (Cannot_Inline): Use Is_Inlined_Always in GNATprove mode. (Can_Be_Inlined_In_GNATprove_Mode): Adapt to possible Empty Body_Id. (Check_And_Build_Body_To_Inline): Use Is_Inlined_Always in GNATprove mode. (Expand_Inline_Call): Use Is_Inlined_Always in GNATprove mode. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not use Is_Inline in GNATprove mode. (Analyze_Subprogram_Specification): Set Is_Inlined_Always at subprogram entity creation. * sem_res.adb (Resolve_Call): Do not deal with inlining during pre-analysis. Issue warning on call to possibly inlined subprogram when body not seen. 2014-07-30 Yannick Moy <moy@adacore.com> * lib-xref.adb (Generate_Reference): Add special case for compiler-generated formals in GNATprove mode. From-SVN: r213264
2014-02-19[multiple changes]Arnaud Charlet1-2/+0
2014-02-19 Yannick Moy <moy@adacore.com> * sinfo.ads: Minor comment update. 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com> * atree.ads: Minor reformatting (change Entity_Info to Einfo). 2014-02-19 Thomas Quinot <quinot@adacore.com> * exp_ch7.adb (Find_Node_To_Be_Wrapped): An assignment statement that has the No_Ctrl_Actions flag is a suitable node to be wrapped if the assigned expression has no finalization actions. * sem_eval.adb (Eval_Entity_Name): For a compile time known boolean value, mark the corresponding condition SCO as constant. 2014-02-19 Robert Dewar <dewar@adacore.com> * exp_util.adb: Minor reformatting. * exp_util.ads (Matching_Standard_Type): New function. * exp_ch7.adb: Minor reformatting. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Get_Cursor_Type): Use scope of iterable type to find declaration for Cursor, to handle properly the case of a discriminated iterable type. 2014-02-19 Vincent Celier <celier@adacore.com> * gnatcmd.adb (GNATCmd): Always replace the object dirs of imported library projects with the library ALI dirs, when setting the object paths. * prj-env.ads (Ada_Objects_Path): Correct comments about argument Including_Libraries. From-SVN: r207888
2014-02-06[multiple changes]Arnaud Charlet1-17/+33
2014-02-06 Pascal Obry <obry@adacore.com> * prj-util.adb (For_Interface_Sources): Fix handling of required bodies for aggregate libs. 2014-02-06 Robert Dewar <dewar@adacore.com> * nlists.ads: Minor comment clarifications. 2014-02-06 Robert Dewar <dewar@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Set Modify_Tree_For_C if gnatd.V set. * opt.ads (Modify_Tree_For_C): New flag. * output.ads, output.adb (Last_Char): New function. 2014-02-06 Pascal Obry <obry@adacore.com> * projects.texi, prj-env.adb (Initialize_Default_Project_Path): Add share/gpr for cross-builds. From-SVN: r207542
2014-01-24[multiple changes]Arnaud Charlet1-2/+2
2014-01-24 Robert Dewar <dewar@adacore.com> * sinfo.ads, make.adb, prj-env.adb: Minor reformatting. 2014-01-24 Vincent Celier <celier@adacore.com> * prj.adb (Add_Aggregated_Project): Do not add a project in the list if it is already there. 2014-01-24 Yannick Moy <moy@adacore.com> * lib-xref-spark_specific.adb (Enclosing_Subprogram_Or_Package): Correct the search for a subrogram declaration to which a pragma is attached. 2014-01-24 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Document --decimal-grouping and --based-grouping switches in gnatpp. From-SVN: r207042
2014-01-24prj.adb, [...]: Add comment, minor code clean ups.Robert Dewar1-5/+4
2014-01-24 Robert Dewar <dewar@adacore.com> * prj.adb, prj-env.adb, back_end.adb: Add comment, minor code clean ups. From-SVN: r207040
2014-01-24[multiple changes]Arnaud Charlet1-5/+21
2014-01-24 Robert Dewar <dewar@adacore.com> * exp_ch7.adb: Minor change of Indices to Indexes (preferred terminology in compiler). 2014-01-24 Robert Dewar <dewar@adacore.com> * scans.ads: Remove Tok_Raise from Sterm, Eterm, After_SM categories, now that Ada 95 supports raise expressions. 2014-01-24 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Enumeration_Type): Use new target parameter Short_Enums_On_Target. * sem_ch13.adb (Set_Enum_Esize): Take Short_Enums_On_Target into account. * targparm.ads, targparm.adb: Add new target parameter Short_Enums. 2014-01-24 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): If subtype indication is given explicity, check that it matches the array component type or the container element type of the domain of iteration. 2014-01-24 Tristan Gingold <gingold@adacore.com> * back_end.adb (Scan_Compiler_Arguments): Set Short_Enums_On_Target. 2014-01-24 Vincent Celier <celier@adacore.com> * prj-env.adb (Ada_Objects_Path): Use Ada_Objects_Path_No_Libs to cache the result when Including_Libraries is False. * prj-env.ads (Ada_Objects_Path): Update documentation * prj.adb (Free (Project_Id)): Also free Ada_Objects_Path_No_Libs (Get_Object_Directory): Return the Library_Ali_Dir only when when Including_Libraries is True. * prj.ads (Get_Object_Directory): Fix and complete documentation (Project_Data): New component Ada_Objects_Path_No_Libs From-SVN: r207036
2014-01-24[multiple changes]Arnaud Charlet1-19/+52
2014-01-24 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Is_Post_State): In a postcondition, a selected component that denotes an implicit dereference is a reference to the post state of the subprogram. 2014-01-24 Robert Dewar <dewar@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): SPARK_Mode OFF for generated subprograms. (Analyze_Subprogram_Specification): Ditto. 2014-01-24 Vincent Celier <celier@adacore.com> * prj-dect.adb (Check_Attribute_Allowed): Detect more forbidden attributes in package Builder of aggregate and aggregate library projects. * prj-nmsc.adb (Process_Naming_Scheme.Check.Check_Aggregate): Remove procedure (Process_Naming_Scheme.Check.Check_Aggregated): Remove parameters. Change error message from "... externally build library ..." to "... externally built project ...". (Process_Naming_Scheme.Check): Do not do any check in aggregate project, as attribute Library_Dir and Library_Name have already been detected as forbidden. 2014-01-24 Vincent Celier <celier@adacore.com> * prj-env.adb (Find_Project): If cached project path is not in project directory, look in current directory first and use cached project path only if project is not found in project directory. From-SVN: r207032
2013-04-11[multiple changes]Arnaud Charlet1-2/+2
2013-04-11 Robert Dewar <dewar@adacore.com> * sem_prag.adb, prj-env.adb: Minor reformatting. 2013-04-11 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Clean ups. 2013-04-11 Yannick Moy <moy@adacore.com> * set_targ.adb: Minor comment update. From-SVN: r197798
2013-04-11[multiple changes]Arnaud Charlet1-10/+57
2013-04-11 Pascal Obry <obry@adacore.com> * gnat_ugn.texi: Remove obsolete comment about DLL calling convention. 2013-04-11 Javier Miranda <miranda@adacore.com> * exp_ch6.adb (Expand_Call): For the call to the target primitive of an interface thunks do not compute the extra actuals; just propagate the extra actuals received by the thunk. * exp_disp.adb (Expand_Interface_Thunk): Decorate new attribute Thunk_Entity. * sem_ch6.adb (Create_Extra_Formals): Do not generate extra formals in interface thunks whose target primitive has no extra formals. 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Pragma): Detect a renaming by looking at the Renamed_Object attribute. (Is_Renaming): Removed. 2013-04-11 Vincent Celier <celier@adacore.com> * prj-env.adb (Initialize_Default_Project_Path): Take into account a project path file, specified by environment variable GPR_PROJECT_PATH_FILE, before taking into account GPR_PROJECT_PATH. * projects.texi: Add documentation for GPR_PROJECT_PATH_FILE 2013-04-11 Ed Schonberg <schonberg@adacore.com> * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads, a-cfdlli.adb, a-cfdlli.ads, a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-ciormu.adb, a-ciormu.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb, a-cborse.ads, a-ciorma.adb, a-cobove.adb, a-ciorma.ads, a-cobove.ads, a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbhase.adb, a-cbhase.ads: Move Iterator operations from body to private part of spec. From-SVN: r197797
2013-01-29prj-proc.adb (Process_Expression_Variable_Decl): Prepend Project_Path to ↵Pascal Obry1-1/+1
current environment. 2013-01-29 Pascal Obry <obry@adacore.com> * prj-proc.adb (Process_Expression_Variable_Decl): Prepend Project_Path to current environment. From-SVN: r195545
2013-01-29[multiple changes]Arnaud Charlet1-4/+9
2013-01-29 Thomas Quinot <quinot@adacore.com> * sprint.adb (Sprint_Node_Actual): Output freeze nodes for itypes even if Dump_Freeze_Null is not set. 2013-01-29 Robert Dewar <dewar@adacore.com> * sem_util.adb: Minor reformatting. * s-rident.ads: Minor comment fixes. 2013-01-29 Pascal Obry <obry@adacore.com> * prj-env.ads, prj-env.adb (Add_Directories): Add parameter to control if the path is prepended or appended. From-SVN: r195544
2012-10-01[multiple changes]Arnaud Charlet1-2/+1
2012-10-01 Thomas Quinot <quinot@adacore.com> * make.adb: Minor documentation fix: error messages are sent to stderr, not stdout. 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> * checks.ads, checks.adb (Apply_Parameter_Aliasing_Checks): New routine. (Apply_Parameter_Validity_Checks): New routines. * exp_ch6.adb (Expand_Call): Add aliasing checks to detect overlapping objects. * freeze.adb: Add with and use clauses for Checks and Validsw. (Freeze_Entity): Add checks to detect proper initialization of scalars. * sem_ch4.adb: Add with and use clauses for Checks and Validsw. (Analyze_Call): Add aliasing checks to detect overlapping objects. * sem_ch13.adb: Add with and use clauses for Validsw. (Analyze_Aspect_Specifications): Add checks to detect proper initialization of scalars. * sem_prag.adb (Chain_PPC): Correct the extraction of the subprogram name. * sem_util.adb (Is_Object_Reference): Attribute 'Result now produces an object. * usage.adb (Usage): Add usage lines for validity switches 'l', 'L', 'v' and 'V'. * validsw.adb (Reset_Validity_Check_Options): Include processing for flags Validity_Check_Non_Overlapping_Params and Validity_Check_Valid_Scalars_On_Params. Code reformatting. (Save_Validity_Check_Options): Include processing for flags Validity_Check_Non_Overlapping_Params and Validity_Check_Valid_Scalars_On_Params. (Set_Validity_Check_Options): Add processing for validity switches 'a', 'l', 'L', 'n', 'v' and 'V'. Code reformatting. * validsw.ads: Add new flags Validity_Check_Non_Overlapping_Params and Validity_Check_Valid_Scalars_On_Params along with comments on usage. 2012-10-01 Thomas Quinot <quinot@adacore.com> * namet.ads, xsnamest.adb, prj-env.adb, sem_warn.adb, errout.ads: Minor reformatting. * prj-part.adb: Add comment. From-SVN: r191890
2012-05-15[multiple changes]Arnaud Charlet1-2/+2
2012-05-15 Thomas Quinot <quinot@adacore.com> * uintp.adb (Image_Uint): Use UI_Div_Rem to get quotient and remainder of U / Base in a single operation. 2012-05-15 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, inline.adb, sem_ch10.adb, prj.ads, sem_util.adb, a-ngelfu.ads, exp_ch4.adb, exp_ch6.adb, aspects.ads, sem_ch6.adb, vms_data.ads, exp_ch3.adb, prj-env.adb: Minor reformatting. From-SVN: r187529
2012-05-15[multiple changes]Arnaud Charlet1-2/+3
2012-05-15 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Expand_With_Clause): In the context of a generic package declaration, a private with-clause on a child unit implies that the implicit with clauses on its parents are private as well. 2012-05-15 Javier Miranda <miranda@adacore.com> * sem_ch6.adb (Is_Interface_Conformant): Add missing call to Base_Type to handle subtypes. * exp_ch6.adb (Expand_Call): For calls located in thunks handle unchecked conversions of access types found in actuals. * exp_disp.adb (Expand_Interface_Thunk): Add missing unchecked conversion to actuals whose type is an access type. Done to avoid reporting spurious errors. 2012-05-15 Vincent Celier <celier@adacore.com> * prj-env.adb (Create_Mapping): Ignore sources that are suppressed (Create_Mapping_File.Process): Ditto * prj-nmsc.adb (Add_Source): Update to take into account suppressed files that may hide inherited sources. (Mark_Excluded_Sources): Mark excluded sources of the current project as suppressed. * prj.ads (Source_Data): New Boolean component Suppressed, defaulted to False 2012-05-15 Thomas Quinot <quinot@adacore.com> * exp_intr.adb: Minor reformatting. 2012-05-15 Thomas Quinot <quinot@adacore.com> * gnat_rm.texi: Document attribute Scalar_Storage_Order. 2012-05-15 Javier Miranda <miranda@adacore.com> * exp_ch3.adb (Build_Offset_To_Top): Modify the expansion of the offset_to_top functions to ensure that their profile is conformant with the profile specified in Ada.Tags. No change in functionality. 2012-05-15 Eric Botcazou <ebotcazou@adacore.com> * inline.adb (Subp_Info): Remove Count and Next_Nopred components, add Processed component and move around Next component. (Add_Call): Reverse meaning of Successors table to the natural one. (Add_Inlined_Body): Do not inline a package if it is in the main unit. (Add_Inlined_Subprogram): Do not add the subprogram to the list if the package is in the main unit. Do not recurse on the successors. (Add_Subp): Adjust to new contents of Subp_Info. (Analyze_Inlined_Bodies): Do not attempt to compute a topological order on the list of inlined subprograms, but compute the transitive closure from the main unit instead. (Get_Code_Unit_Entity): Always return the spec for a package. From-SVN: r187526
2012-01-30[multiple changes]Arnaud Charlet1-64/+50
2012-01-30 Vincent Pucci <pucci@adacore.com> * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Minor code clean up. * s-diflio.ads: Minor change. 2012-01-30 Javier Miranda <miranda@adacore.com> * exp_ch9.adb (Build_Dispatching_Requeue): Add missing call to Get_Entry_Index. Required to generate code which provides the correct value of Entry_Index in the target entry. 2012-01-30 Nicolas Roche <roche@adacore.com> * system-vxworks-ppc.ads: Add pragma Linker_Options -crtbe to fix issue with zcx on VxWorks5. 2012-01-30 Pascal Obry <obry@adacore.com> * prj.ads, prj.adb (For_Every_Project_Imported): Remove In_Aggregate_Lib. (For_Every_Project_Imported_Context): New generic routine with a context parameter. * prj-nmsc.adb: Revert to use For_Every_Project_Imported Avoid distributed complexity. * prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: Ditto. From-SVN: r183702
2011-12-23[multiple changes]Arnaud Charlet1-49/+63
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. From-SVN: r182656
2011-12-12[multiple changes]Arnaud Charlet1-4/+14
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. From-SVN: r182228
2011-12-12[multiple changes]Arnaud Charlet1-0/+29
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. From-SVN: r182227
2011-11-04sem_prag.adb, [...]: Minor reformatting.Robert Dewar1-6/+6
2011-11-04 Robert Dewar <dewar@adacore.com> * sem_prag.adb, atree.ads, prj-env.adb, prj-env.ads: Minor reformatting. From-SVN: r180949
2011-11-04[multiple changes]Arnaud Charlet1-75/+79
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 From-SVN: r180948
2011-09-02[multiple changes]Arnaud Charlet1-8/+7
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. From-SVN: r178448
2011-09-02[multiple changes]Arnaud Charlet1-27/+25
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. From-SVN: r178443
2011-09-02[multiple changes]Robert Dewar1-14/+14
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. From-SVN: r178434
2011-09-01[multiple changes]Arnaud Charlet1-1/+3
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. From-SVN: r178418
2011-09-01[multiple changes]Arnaud Charlet1-5/+5
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. From-SVN: r178412
2011-09-01[multiple changes]Arnaud Charlet1-1/+18
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. From-SVN: r178411
2011-09-01[multiple changes]Arnaud Charlet1-2/+3
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. From-SVN: r178404
2011-08-29[multiple changes]Arnaud Charlet1-19/+0
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. From-SVN: r178177
2011-08-04[multiple changes]Arnaud Charlet1-10/+4
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 . From-SVN: r177395
2011-08-04[multiple changes]Arnaud Charlet1-21/+44
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 From-SVN: r177383
2011-08-04[multiple changes]Arnaud Charlet1-1/+1
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. From-SVN: r177378
2011-08-04[multiple changes]Arnaud Charlet1-36/+5
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. From-SVN: r177367
2011-08-04bindgen.adb, [...]: Minor reformattingRobert Dewar1-1/+1
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. From-SVN: r177356
2011-08-04[multiple changes]Arnaud Charlet1-4/+0
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. From-SVN: r177355
2011-08-04[multiple changes]Arnaud Charlet1-19/+23
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 From-SVN: r177353
2011-08-04[multiple changes]Arnaud Charlet1-0/+5
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. From-SVN: r177318
2011-08-042011-08-04 Emmanuel Briot <briot@adacore.com>Emmanuel Briot1-1/+7
* 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 From-SVN: r177315
2011-08-03[multiple changes]Arnaud Charlet1-24/+24
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. From-SVN: r177263