aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/opt.ads
AgeCommit message (Collapse)AuthorFilesLines
2010-10-26[multiple changes]Arnaud Charlet1-1/+3
2010-10-26 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, exp_prag.adb, sem_ch3.adb, exp_atag.adb, layout.adb, sem_dist.adb, exp_ch7.adb, exp_util.adb, exp_attr.adb, exp_ch9.adb, sem_ch10.adb, checks.adb, sem_prag.adb, par-endh.adb, sem_ch12.adb, exp_smem.adb, sem_attr.adb, exp_ch4.adb, exp_ch6.adb, exp_ch8.adb, sem_ch6.adb, exp_disp.adb, exp_aggr.adb, exp_dist.adb, sem_ch13.adb, par-ch3.adb, par-ch5.adb, exp_strm.adb, exp_ch3.adb: Minor reformatting * opt.ads: Minor comment fix. 2010-10-26 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Document option -s for gnatlink. From-SVN: r165963
2010-10-26opt.ads: Move documentation on checksum stuff here from prj-nmscRobert Dewar1-20/+50
2010-10-26 Robert Dewar <dewar@adacore.com> * opt.ads: Move documentation on checksum stuff here from prj-nmsc * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Move documentation on checksum versions to opt.ads. From-SVN: r165962
2010-10-26opt.ads (Checksum_Accumulate_Token_Checksum): New Boolean flag, defaulted to ↵Vincent Celier1-5/+18
True. 2010-10-26 Vincent Celier <celier@adacore.com> * opt.ads (Checksum_Accumulate_Token_Checksum): New Boolean flag, defaulted to True. (Checksum_GNAT_6_3): New name of Old_Checksums (Checksum_GNAT_5_03): New name of Old_Old_Checksums * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Adapt to new names of Opt flags. Set Checksum_Accumulate_Token_Checksum to False if GNAT version is 5.03 or before. * scng.adb (Accumulate_Token_Checksum_GNAT_6_3): New name of procedure Accumulate_Token_Checksum_Old. (Accumulate_Token_Checksum_GNAT_5_03): New name of procedure Accumulate_Token_Checksum_Old_Old. (Nlit): Call Accumulate_Token_Checksum only if Opt.Checksum_Accumulate_Token_Checksum is True. (Scan): Ditto From-SVN: r165961
2010-10-26opt.ads (Old_Checksums, [...]): New Boolean flags, defaulted to False.Vincent Celier1-0/+7
2010-10-26 Vincent Celier <celier@adacore.com> * opt.ads (Old_Checksums, Old_Old_Checksums): New Boolean flags, defaulted to False. * prj-nmsc.adb (Process_Project_Level_Array_Attributes): When processing attribute Toolchain_Version ("Ada"), set Opt.Old_Checksums and Opt.Old_Old_Checksums depending on the GNAT version. * scng.adb (Accumulate_Token_Checksum_Old): New procedure. (Accumulate_Token_Checksum_Old_Old): New procedure. (Scan): For keywords, when Opt.Old_Checksums is True, call one of the alternative procedures Accumulate_Token_Checksum_Old or Accumulate_Token_Checksum_Old_Old, instead of Accumulate_Token_Checksum. From-SVN: r165959
2010-10-26[multiple changes]Arnaud Charlet1-1/+1
2010-10-26 Robert Dewar <dewar@adacore.com> * opt.ads: Comment fix. * sem_cat.adb: Treat categorization errors as warnings in GNAT Mode. * switch-c.adb: GNAT Mode does not set Treat_Categorization_Errors_As_Warnings. 2010-10-26 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve warning when an operator renames another one with a different name. 2010-10-26 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb, exp_pakd.adb: Minor reformatting. From-SVN: r165956
2010-10-26[multiple changes]Arnaud Charlet1-2/+7
2010-10-26 Robert Dewar <dewar@adacore.com> * opt.ads (Treat_Categorization_Errors_As_Warnings): New flag * sem_cat.adb (Check_Categorization_Dependencies): Use Check_Categorization_Dependencies * switch-c.adb: GNAT Mode sets Treat_Categorization_Errors_As_Warnings -gnateP sets Treat_Categorization_Errors_As_Warnings * usage.adb: Add line for -gnateP switch 2010-10-26 Javier Miranda <miranda@adacore.com> * sem_ch3.adb (Add_Internal_Interface_Entities): Handle primitives inherited from the parent that cover interface primitives. (Derive_Progenitor_Subprograms): Handle primitives inherited from the parent that cover interface primitives. * sem_disp.adb (Find_Primitive_Covering_Interface): When searching in the list of primitives of the type extend the test to include inherited private primitives. * sem_ch6.ads (Is_Interface_Conformant): Add missing documentation. * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Add missing barrier to the loop searching for explicit overriding primitives. * sem_ch4.adb (Analyze_Indexed_Component_Form): Add missing barrier before accessing attribute Entity. 2010-10-26 Bob Duff <duff@adacore.com> * make.adb: Call Namet.Finalize, so we can get statistics. From-SVN: r165952
2010-10-26[multiple changes]Arnaud Charlet1-18/+18
2010-10-26 Geert Bosch <bosch@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the subprogram_body node to determine wether the subprogram is a rewritten parameterized expression. 2010-10-26 Robert Dewar <dewar@adacore.com> * opt.ads: Minor code reorganization Alphabetize Warning switches. From-SVN: r165951
2010-10-19[multiple changes]Arnaud Charlet1-2/+8
2010-10-19 Robert Dewar <dewar@adacore.com> * sem_eval.adb: Minor reformatting. 2010-10-19 Tristan Gingold <gingold@adacore.com> * exp_ch4.adb (Expand_N_And_Op, Expand_N_Or_Op, Expand_N_Xor_Op): Call Expand_Intrinsic_Call if the function is intrinsic. * exp_intr_adb (Expand_Binary_Operator): Handle VMS case for logical binary operator on the unsigned_quadword record. * exp_intr.ads (Expand_Intrinsic_Call): Update comments. 2010-10-19 Geert Bosch <bosch@adacore.com> * gnat_rm.texi (pragma Float_Representation): Fix typo. 2010-10-19 Arnaud Charlet <charlet@adacore.com> * switch-c.adb (Scan_Front_End_Switches): Add handling of -gnateE. * fe.h (Exception_Extra_Info): Declare. * usage.adb (usage): Add -gnateE doc. * checks.adb (Install_Null_Excluding_Check): Use better sloc. * sem_util.adb (Insert_Explicit_Dereference): Ditto. * gnat_ugn.texi: Document -gnateE switch. * a-except.adb (Set_Exception_C_Msg): New parameter Column. * a-except-2005.adb (Set_Exception_C_Msg): New parameter Column. (Raise_Constraint_Error_Msg): Ditto. (Image): New helper function. (Rcheck_00_Ext, Rcheck_05_Ext, Rcheck_12_Ext): New procedure with more detailed exception information. Adjust calls to Set_Exception_C_Msg and Raise_Constraint_Error_Msg. * a-exexda.adb (Set_Exception_C_Msg): New parameter Column. * opt.ads (Exception_Extra_Info): New flag. * gcc-interface/utils.c (gnat_raise_decls_ext): New. * gcc-interface/utils2.c (build_call_raise_range, build_call_raise_column): New functions. * gcc-interface/gigi.h (exception_info_kind, gnat_raise_decls_ext, build_call_raise_range, build_call_raise_column): Declare. gcc-interface/trans.c (build_raise_check): New function. (gigi): Initialize gnat_raise_decls_ext. (gnat_to_gnu): Add initial support for -gnateE switch. * gcc-interface/Make-lang.in: Update dependencies. From-SVN: r165696
2010-10-19[multiple changes]Arnaud Charlet1-3/+3
2010-10-19 Geert Bosch <bosch@adacore.com> * ttypef.ads: Change VAXDF_Last to be -VAXDF_First, as type is symmetric. 2010-10-19 Robert Dewar <dewar@adacore.com> * atree.h (Field29): Fix incorrect definition. * einfo.adb (Invariant_Procedure): New attribute (Has_Invariants): New flag (Has_Inheritable_Invariants): New flag (OK_To_Reference): New flag Minor code reorganization (use Next_Rep_Item function) * einfo.ads (Invariant_Procedure): New attribute (Has_Invariants): New flag (Has_Inheritable_Invariants): New flag (OK_To_Reference): New flag * exp_ch3.adb (Expand_N_Object_Declaration): Add check for invariant * exp_ch4.adb (Expand_N_Type_Conversion): Check invariant on type conversion. Minor reformatting. * exp_util.ads, exp_util.adb (Make_Invariant_Call): New procedure. * opt.ads (List_Inherited_Aspects): New name for List_Inherited_Pre_Post * par-prag.adb: Add dummy entry for pragma Invariant. * sem_ch13.adb (Build_Invariant_Procedure): New procedure (Analyze_Aspect_Specification): Add support for Invariant aspect * sem_ch13.ads (Build_Invariant_Procedure): New procedure * sem_ch3.adb (Build_Derived_Type): Propagate invariant information (Process_Full_View): Deal with invariants, building invariant procedure Minor reformatting * sem_ch6.adb (Process_PPCs): Add processing of invariants * sem_ch7.adb (Analyze_Package_Specification): Build invariant procedures. * sem_prag.adb: Implement pragma Invariant. * sem_res.adb (Resolve_Entity_Name): Allow type reference if OK_To_Reference set. * sem_warn.adb (List_Inherited_Aspects): New name for List_Inherited_Pre_Post. * snames.ads-tmpl: Add entries for pragma Invariant. * treepr.adb (Print_Entity_Information): Add handling of Field29. * usage.adb: Warning .l/.L applies to invariant as well as pre/post. From-SVN: r165694
2010-10-19[multiple changes]Arnaud Charlet1-4/+4
2010-10-19 Javier Miranda <miranda@adacore.com> * par-ch4.adb: Update documentation of Ada 2012 syntax rules for membership test. 2010-10-19 Bob Duff <duff@adacore.com> * sem_attr.adb (Eval_Attribute): Implement Max_Alignment_For_Allocation attribute. * exp_attr.adb (Expand_N_Attribute_Reference): Add Attribute_Max_Alignment_For_Allocation to the case statement. * snames.ads-tmpl (Name_Max_Alignment_For_Allocation, Attribute_Max_Alignment_For_Allocation): New attribute name. 2010-10-19 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (OK_For_Limited_Init_In_05): a call to an access to parameterless function appears syntactically as an explicit dereference. 2010-10-19 Thomas Quinot <quinot@adacore.com> * sem_ch8.adb, sem_ch12.adb, opt.ads, sem_ch6.adb, sem_res.adb, i-cexten.ads, exp_disp.adb, exp_ch4.adb, exp_ch9.adb: Minor reformatting 2010-10-19 Thomas Quinot <quinot@adacore.com> * sem_util.adb (Collect_Primitive_Operations): A function with an anonymous access result designating T is a primitive operation of T. From-SVN: r165692
2010-10-18[multiple changes]Arnaud Charlet1-0/+16
2010-10-18 Bob Duff <duff@adacore.com> * sinfo.ads, sinfo.adb: Modify comment about adding fields to be more correct, and to be in a more convenient order. (Default_Storage_Pool): New field of N_Compilation_Unit_Aux, for recording the Default_Storage_Pool for a parent library unit. * einfo.ads (Etype): Document the case in which Etype can be Empty. * sem_prag.adb (Pragma_Default_Storage_Pool): Analyze the new Default_Storage_Pool pragma. * sem.ads (Save_Default_Storage_Pool): Save area for push/pop scopes. * gnat_ugn.texi: Document Default_Storage_Pool as a new configuration pragma. * freeze.adb (Freeze_Entity): When freezing an access type, take into account any Default_Storage_Pool pragma that applies. We have to do this at the freezing point, because up until that point, a Storage_Pool or Storage_Size clause could occur, which should override the Default_Storage_Pool. * par-prag.adb: Add this pragma to the list of pragmas handled entirely during semantics. * sem_ch8.adb (Push_Scope, Pop_Scope): Save and restore the Default_Storage_Pool information. * opt.ads (Default_Pool, Default_Pool_Config): New globals for recording currently-applicable Default_Storage_Pool pragmas. * opt.adb: Save/restore the globals as appropriate. * snames.ads-tmpl (Name_Default_Storage_Pool, Pragma_Default_Storage_Pool): New pragma name. 2010-10-18 Vincent Celier <celier@adacore.com> * make.adb (Switches_Of): Put the spec and body suffix in canonical case. From-SVN: r165637
2010-10-12[multiple changes]Arnaud Charlet1-0/+5
2010-10-12 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Clarify that 'Old can be used in preconditions and postcondition pragmas. 2010-10-12 Robert Dewar <dewar@adacore.com> * errout.ads, erroutc.adb: The # insertion now handles from in place of at. * exp_prag.adb (Expand_Pragma_Check): Suppress generated default message if new switch Exception_Locations_Suppressed is set. (Expand_Pragma_Check): Revised wording for default message for case of precondition or postcondition. * namet.ads, namet.adb (Build_Location_String): New procedure. * opt.ads (List_Inherited_Pre_Post): New flag. * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Add call to list inherited pre/post aspects. * sem_ch13.adb (Analyze_Aspect_Specification): Improve generation of messages for precondition/postcondition cases. * sem_ch6.adb (Process_PPCs): General cleanup, and list inherited PPC's if flag List_Inherited_Pre_Post is set True. (Process_PPCs): Add initial handling for inherited preconditions (List_Inherited_Pre_Post_Aspects): New procedure * sem_ch6.ads (List_Inherited_Pre_Post_Aspects): New procedure * sem_disp.adb (Inherited_Subprograms): New function * sem_disp.ads (Inherited_Subprograms): New function * sem_prag.adb (Check_Duplicate_Pragma): Clean up handling of pre/postcondition. (Check_Precondition_Postcondition): Check for inherited aspects * sem_warn.adb: Process -gnatw.l/w.L setting List_Inherited_Pre_Post * sinfo.ads, sinfo.adb (Split_PPC): New flag. * sinput.ads, sinput.adb (Build_Location_String): New function. * usage.adb: Add line for -gnatw.l/-gnatw.L 2010-10-12 Javier Miranda <miranda@adacore.com> * exp_util.adb (Remove_Side_Effects): Remove wrong code. 2010-10-12 Arnaud Charlet <charlet@adacore.com> * xref_lib.adb: Add handling of j/J letters. From-SVN: r165361
2010-10-11par-ch9.adb, [...]: Use Ada_2005 instead of Ada_05 (Ada_Version_Type).Bob Duff1-5/+4
2010-10-11 Bob Duff <duff@adacore.com> * par-ch9.adb, sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, impunit.adb, impunit.ads, sem_ch5.adb, sem_type.adb, exp_imgv.adb, exp_util.adb, switch-c.adb, exp_attr.adb, exp_ch9.adb, par-ch11.adb, usage.adb, sem_ch9.adb, sem_ch10.adb, scng.adb, checks.adb, sem_prag.adb, sem_ch12.adb, par-ch2.adb, freeze.adb, par-ch4.adb, sem_util.adb, sem_res.adb, sem_attr.adb, par-ch6.adb, exp_ch4.adb, exp_ch6.adb, sem_ch4.adb, exp_ch8.adb, par-ch10.adb, sem_ch6.adb, par-prag.adb, exp_disp.adb, par-ch12.adb, sem_ch8.adb, snames.adb-tmpl, opt.ads, exp_aggr.adb, sem_cat.adb, sem_ch13.adb, par-ch3.adb, exp_strm.adb, exp_cg.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb: Use Ada_2005 instead of Ada_05 (Ada_Version_Type). From-SVN: r165283
2010-10-11[multiple changes]Arnaud Charlet1-4/+3
2010-10-11 Bob Duff <duff@adacore.com> * sem_aggr.adb, impunit.adb, impunit.ads, switch-c.adb, usage.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, par-ch4.adb, par-ch6.adb, par-ch8.adb, exp_ch4.adb, sem_ch4.adb, sem_ch6.adb, par-prag.adb, opt.ads, par-ch3.adb, lib-xref.adb: Use Ada_2012 instead of Ada_12 (Ada_Version_Type). 2010-10-11 Javier Miranda <miranda@adacore.com> * exp_util.adb (Safe_Prefixed_Reference): If the prefix is an explicit dereference then do not exclude dereferences of access-to-constant types to handle them as constant view of variables (and hence remove side effects when required). * sem_res.adb (Resolve_Slice): Ensure that side effects in the bounds are properly handled. From-SVN: r165282
2010-10-07[multiple changes]Arnaud Charlet1-0/+3
2010-10-07 Robert Dewar <dewar@adacore.com> * sem_res.adb: Minor reformatting 2010-10-07 Olivier Ramonat <ramonat@adacore.com> * gnat_ugn.texi: Minor editing. * opt.ads: Document that scripts rely on specific formats in opt.ads 2010-10-07 Robert Dewar <dewar@adacore.com> * a-wichun.ads, a-wichun.adb (To_Lower_Case): New function (To_Upper_Case): Fix to be inverse of To_Lower_Case * a-zchuni.ads, a-zchuni.adb (To_Lower_Case): New function (To_Upper_Case): Fix to be inverse of To_Lower_Case 2010-10-07 Robert Dewar <dewar@adacore.com> * a-wichha.adb, a-wichha.ads, a-zchhan.adb, a-zchhan.ads: New file. * impunit.adb: Add entries for a-wichha/a-zchhan * Makefile.rtl: Add entries for a-wichha/a-zchhan 2010-10-07 Vincent Celier <celier@adacore.com> * make.adb (Check): Call Check_Source_Info_In_ALI with Project_Tree * makeutl.adb (Check_Source_Info_In_ALI): If there is at least one replaced source, check that none of the replaced sources are in the dependencies. * makeutl.ads (Check_Source_Info_In_ALI): New parameter Tree * prj-nmsc.adb (Remove_Source): New parameter Tree. If the source is replaced with a source with a different file name, put it in the hash table Replaced_Sources. (Add_Source): Call Remove_Source with Data.Tree. If there is at least one replaced source, check if it has the same file name as the current source; if it has, remove it from the hash table Replaced_Sources. * prj.adb (Reset): Reset hash table Tree.Replaced_Sources * prj.ads (Replaced_Source_HTable): New hash table (Project_Tree_Data): New components Replaced_Sources and Replaced_Source_Number. 2010-10-07 Ed Schonberg <schonberg@adacore.com> * sem_elab.adb (Check_A_Call): After inserting elaboration check, set proper flag to prevent a double elaboration check on the same call. * exp_util.adb (Insert_Actions): If the enclosing node is an Expression_With_Actions and it has been analyzed already, find insertion point further up in the tree. 2010-10-07 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch13.adb (Analyze_Record_Representation_Clause): Alphabetize all local variables. Remove the general restriction which prohibits the application of record rep clauses to Unchecked_Union types. Add Ada 2012 check to detect improper naming of an Unchecked_Union discriminant in record rep clause. * sem_prag.adb: Add with and use clause for Exp_Ch7. (Analyze_Pragma): Unchecked_Union case: Propagate the Unchecked_Union type to all invocations of Check_Component and Check_Variant. (Check_Component): Add formal parameters UU_Typ and In_Variant_Part. Rewritten. Add Ada 2012 check to detect improper use of formal private types and private extensions as component types of an Unchecked_Union declared inside a generic body. (Check_Variant): Add formal parameter UU_Typ. Propagate the Unchecked_Union type to all calls of Check_Component. Signal that the current component comes from the variant part of an Unchecked_Union type. (Inside_Generic_Body): New routine. 2010-10-07 Ed Schonberg <schonberg@adacore.com> * exp_ch4.adb (Expand_Composite_Equality): When looking for a primitive equality operation for a record component, verify that both formals have the same type, and the result type is boolean. 2010-10-07 Vincent Celier <celier@adacore.com> * gnatcmd.adb (Check_Files): When looking for the .ci file for a binder generated file, look for both b~xxx and b__xxx as gprbuild always uses b__ as the prefix of such files. From-SVN: r165084
2010-10-07[multiple changes]Arnaud Charlet1-0/+6
2010-10-07 Robert Dewar <dewar@adacore.com> * sem_attr.adb: Minor reformatting. * einfo.ads, einfo.adb (Is_Ada_2012_Only): New flag * itypes.adb (Create_Null_Excluding_Itype): Set Is_Ada_2012_Only flag properly. * lib-xref.adb (Generate_Reference): Warn on use of Ada 2012 entity in non-Ada 2012 mode. * opt.ads (Warn_On_Ada_2012_Compatibility): New flag * sem_ch3.adb (Analye_Subtype_Declaration): Inherit Is_Ada_2012_Only * sem_ch7.adb (Preserve_Full_Attributes): Preserve Is_Ada_2012_Only flag. * sem_prag.adb (Analyze_Pragma, case Ada_12/Ada_2012): Allow form with argument. * sem_type.adb (Disambiguate): Deal with Is_Ada_2012_Only. * sem_warn.adb (Warn_On_Ada_2012_Compatibility): New flag, treated same as 2005 flag. 2010-10-07 Javier Miranda <miranda@adacore.com> * a-tags.ads: Use new support for pragma Ada_2012 with function Type_Is_Abstract. From-SVN: r165082
2010-09-10[multiple changes]Arnaud Charlet1-0/+14
2010-09-10 Robert Dewar <dewar@adacore.com> * opt.adb (Short_Descriptors): New flag (Short_Descriptors_Config): New flag * opt.ads (Short_Descriptors): New flag (Short_Descriptors_Config): New flag * par-prag.adb: Add dummy entry for Short_Descriptors pragma * sem_prag.adb (Set_Mechanism_Value): Deal with Short_Descriptors pragma (Analyze_Pragma): Implement Short_Descriptors pragma * snames.ads-tmpl: Add entry for Short_Descriptors pragma 2010-09-10 Emmanuel Briot <briot@adacore.com> * prj-util.adb, prj-util.ads (Executable_Of): Take into account the project's Executable_Suffix. From-SVN: r164147
2010-09-09[multiple changes]Arnaud Charlet1-0/+1
2010-09-09 Vincent Celier <celier@adacore.com> * prj-proc.adb: Minor comment spelling error fix. * osint.ads (Env_Vars_Case_Sensitive): Use function Get_Env_Vars_Case_Sensitive, not Get_File_Names_Case_Sensitive to compute value. 2010-09-09 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Resolve_Equality_Op): Implement Ada2012 rule for resolution of conditional expressions whose dependent expressions are anonymous access types. 2010-09-09 Robert Dewar <dewar@adacore.com> * a-ststio.adb: Minor code reorganization. * s-direio.adb, prj.adb, prj-nmsc.adb, sem_type.adb: Remove redundant conversion. * types.ads: Minor reformatting. * binde.adb, vms_conv.adb, gnatls.adb, s-strxdr.adb, uintp.adb: Remove redundant conversions. * output.adb: Minor reformatting. * sem_ch8.adb (Find_Type): Test for redundant base applies to user types. * opt.ads: Add pragma Ordered for Verbosity_Level. * prj.ads: Add pragma Ordered for type Verbosity. From-SVN: r164072
2010-09-09[multiple changes]Arnaud Charlet1-0/+8
2010-09-09 Vincent Celier <celier@adacore.com> * osint.adb (Canonical_Case_File_Name): Use procedure To_Lower in System.Case_Util (Canonical_Case_Env_Var_Name): Ditto 2010-09-09 Bob Duff <duff@adacore.com> * g-pehage.adb (Allocate): Initialize the allocated elements of IT. 2010-09-09 Robert Dewar <dewar@adacore.com> * cstand.adb: Mark Boolean and Character types as Ordered * einfo.adb (Has_Pragma_Ordered): New flag * einfo.ads (Has_Pragma_Ordered): New flag * g-calend.ads: Mark Day_Name as Ordered * opt.ads: Mark Ada_Version_Type as Ordered (Warn_On_Unordered_Enumeration_Type): New flag * par-prag.adb: Add procdessing for pragma Ordered * s-ficobl.ads (Read_File_Mode): New subtype * s-fileio.adb: Use Read_File_Mode instead of explicit ranges * s-taskin.ads: Mark Entry_Call_State as ordered * sem_ch3.adb (Build_Derived_Enumeration_Type): Inherit Has_Pragma_Ordered. * sem_ch6.ads: Mark Conformance_Type as Ordered * sem_prag.adb: Implement pragma Ordered * sem_res.adb (Bad_Unordered_Enumeration_Reference): New function (Resolve_Comparison_Op): Diagnose unordered comparison (Resolve_Range): Diagnose unordered range * sem_warn.adb (Warn_On_Unordered_Enumeration_Type): New flag (from -gnatw.u/U) * snames.ads-tmpl: Add entry for pragma Ordered * style.ads (Check_Enumeration_Subrange): Removed * styleg.adb (Check_Enumeration_Subrange): Removed * styleg.ads (Check_Enumeration_Subrange): Removed * stylesw.adb: Remove handling of -gnatyE switch * stylesw.ads: (Style_Check_Enumeration_Subranges): Removed * vms_data.ads: Remove -gnatyE entries Add -gnatw.u entries * ug_words: Entries for -gnatw.u and -gnatw.U * gnat_ugn.texi: Document -gnatw.u/-gnatw.U switches * gnat_rm.texi: Document pragma Ordered. * s-tasren.adb: Avoid unnecessary comparison on unordered enumeration. * s-tpobop.adb: Remove comparison on unordered enumeration type. From-SVN: r164070
2010-09-09[multiple changes]Arnaud Charlet1-0/+6
2010-09-09 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Same_Object): include formal parameters. 2010-09-09 Vincent Celier <celier@adacore.com> * make.adb (Queue): New package implementing a new impementation of the queue, taking into account the new switch --single-compile-per-obj-dir. * makeutl.ads (Single_Compile_Per_Obj_Dir_Switch): New constant String for gnatmake and gprbuild new switch --single-compile-per-obj-dir. * opt.ads (One_Compilation_Per_Obj_Dir): New Boolean flag, defauted to False. * switch-m.adb (Scan_Make_Switches): Take into account new gnatmake switch --single-compile-per-obj-dir. * vms_data.ads: Add qualifier SINGLE_COMPILE_PER_OBJ_DIR for gnatmake switch --single-compile-per-obj-dir. * gnat_ugn.texi: Add documentation for new gnatmake switch --single-compile-per-obj-dir. From-SVN: r164067
2010-08-10a-chahan.ads: Add comments on handling of obsolescent entries.Robert Dewar1-0/+4
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-7/+5
2010-06-23 Eric Botcazou <ebotcazou@adacore.com> * exp_ch11.adb (Expand_Local_Exception_Handlers): Propagate the end label to the new sequence of statements. Set the sloc of the raise statement onto the new goto statements. 2010-06-23 Robert Dewar <dewar@adacore.com> * a-stuten.ads, a-stuten.adb: New files. * impunit.adb: Add engtry for Ada.Strings.UTF_Encoding (a-stuten.ads) * Makefile.rtl: Add entry for a-stuten (Ada.Strings.UTF_Encoding) 2010-06-23 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Add documentation of -gnat12 switch Add documentation of -gnatX switch. 2010-06-23 Ed Schonberg <schonberg@adacore.com> * inline.ads: Include the current Ada_Version in the info for pending instance bodies, so that declaration and body are compiled with the same Ada_Version. * inline.adb: Move with_clause for Opt to spec. * sem_ch12.adb (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): Save current Ada_Version in Pending_Instantiation information. (Instantiate_Package_Body, Instantiate_Subprogram_Body, Inline_Package_Body): Use the Ada_Version present in the body information. 2010-06-23 Robert Dewar <dewar@adacore.com> * usage.adb: Add documentation for -gnat12 switch. * errout.ads: Add VMS alias entry for -gnat12 switch * gnat_rm.texi: Add documentation for pragma Ada_12 and Ada_2012 Add documentation for pragma Extensions_Allowed. * opt.ads: Add entry for Ada 2012 mode. * sem_ch4.adb, par-ch3.adb, par-ch4.adb: Use new Ada 2012 mode for 2012 features. * sem_prag.adb, par-prag.adb: Add processing for pragma Ada_12 and Ada_2012. * sem_ch13.adb: Add handling for Ada 2012 mode. * snames.ads-tmpl: Add entries for pragma Ada_2012 and Ada_12. * switch-c.adb: Add handling for -gnat12 switch. Implement -gnat2005 and -gnat2012. * usage.adb: Add documentation for -gnat12 switch. * vms_data.ads: Add /12 switch for Ada 2012 mode. From-SVN: r161268
2010-06-23[multiple changes]Arnaud Charlet1-1/+1
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-23[multiple changes]Arnaud Charlet1-0/+5
2010-06-23 Robert Dewar <dewar@adacore.com> * sem_ch6.adb: Minor reformatting. 2010-06-23 Doug Rupp <rupp@adacore.com> * bindusg.adb (Display): Write -Hnn line. * bindgen.adb (Gen_Adainit_Ada): Write Heap_Size to binder file as necessary. * init.c (__gl_heap_size): Rename from __gl_no_malloc_64 and change valid values to 32 and 64. (GNAT$NO_MALLOC_64): Recognize TRUE, 1, FALSE, and 0 in addition to ENABLE, DISABLE as valid settings. * switch-b.adb (Scan_Binder_Switches): Process -Hnn switch. * opt.ads (Heap_Size): New global variable. * gcc-interface/utils2.c (maybe_wrap_malloc): Remove mostly redundant TARGET_MALLOC64 check. Fix comment. From-SVN: r161243
2010-06-22[multiple changes]Arnaud Charlet1-4/+3
2010-06-22 Arnaud Charlet <charlet@adacore.com> * fmap.adb, opt.ads, osint.adb, osint.ads, output.ads, scng.adb, sinput-c.adb, switch-m.ads, tree_io.ads: Use simpler form of Warnings Off/On. 2010-06-22 Thomas Quinot <quinot@adacore.com> * einfo.ads: Minor reformatting. 2010-06-22 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Expand_Interface_Thunk): Do not generate thunk of eliminated primitives. (Make_DT): Avoid referencing eliminated primitives. (Register_Primitive): Do not register eliminated primitives in the dispatch table. Required to add this functionality when the program is compiled without static dispatch tables (-gnatd.t) From-SVN: r161183
2010-06-22[multiple changes]Arnaud Charlet1-0/+4
2010-06-22 Emmanuel Briot <briot@adacore.com> * fmap.adb, scng.adb, switch-m.ads, sinput-c.adb, opt.ads, output.ads, tree_io.ads, osint.adb, osint.ads: Use configuration pragmas to prevent warnings on use of internal GNAT units. 2010-06-22 Jose Ruiz <ruiz@adacore.com> * s-taprop-vxworks.adb (Set_Priority): Update comments. 2010-06-22 Paul Hilfinger <hilfinger@adacore.com> * s-rannum.adb: Make stylistic change to remove mystery constant in Extract_Value. Image_Numeral_Length: new symbolic constant. 2010-06-22 Ed Schonberg <schonberg@adacore.com> * einfo.ads, einfo.adb: Make Is_Protected_Interface, Is_Synchronized_Interface, Is_Task_Interface into computable predicates, to free three flags in entity nodes. * sem_ch3.adb: Remove setting of these flags. From-SVN: r161181
2010-06-22sem_res.adb (Make_Call_Into_Operator): Use First_Subtype for better error ↵Thomas Quinot1-2/+10
reporting with generic types. 2010-06-22 Thomas Quinot <quinot@adacore.com> * sem_res.adb (Make_Call_Into_Operator): Use First_Subtype for better error reporting with generic types. 2010-06-22 Thomas Quinot <quinot@adacore.com> * bindgen.adb, bindusg.adb, gnatbind.adb, gnat_ugn.texi, opt.ads, osint-b.adb, osint-b.ads, output.adb, output.ads, switch-b.adb, vms_data.ads: Add a new command line switch -A to gnatbind to output the list of all ALI files for the partition. From-SVN: r161153
2010-06-18[multiple changes]Arnaud Charlet1-3/+12
2010-06-18 Thomas Quinot <quinot@adacore.com> * sem_eval.adb (Test_In_Range): New subprogram, factoring duplicated code between... (Is_In_Range, Is_Out_Of_Range): Reimplement in terms of call to Test_In_Range. 2010-06-18 Robert Dewar <dewar@adacore.com> * sprint.adb: Minor change in output format for expression wi actions. * par-ch3.adb: Minor code reorganization. Minor reformatting. * sem_ch5.adb: Minor comment fix. 2010-06-18 Robert Dewar <dewar@adacore.com> * debug.adb: New debug flag -gnatd.L to control Back_End_Handles_Limited_Types. * exp_ch4.adb (Expand_N_Conditional_Expression): Let back end handle limited case if Back_End_Handles_Limited_Types is True. (Expand_N_Conditional_Expression): Use N_Expression_With_Actions to simplify expansion if Use_Expression_With_Actions is True. * gnat1drv.adb (Adjust_Global_Switches): Set Back_End_Handles_Limited_Types. * opt.ads (Back_End_Handles_Limited_Types): New flag. 2010-06-18 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Rewrite_Operator_As_Call): Do not rewrite user-defined intrinsic operator if expansion is not enabled, because in an instantiation the original operator must be present to verify the legality of the operation. From-SVN: r160969
2010-06-17[multiple changes]Arnaud Charlet1-3/+10
2010-06-17 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Is_Atomic_Object): Predicate does not apply to subprograms. 2010-06-17 Robert Dewar <dewar@adacore.com> * gnat_rm.texi, gnat_ugn.texi: Clean up documentation on warning and style check messages. * sem_res.adb (Resolve_Call): Don't call Check_For_Eliminated_Subprogram if we are analyzing within a spec expression. 2010-06-17 Robert Dewar <dewar@adacore.com> * debug.adb: Add documentation for debug flags .X and .Y * exp_ch4.adb (Expand_Short_Circuit_Operator): Use Use_Expression_With_Actions. * gnat1drv.adb (Adjust_Global_Switches): Set Use_Expression_With_Actions. * opt.ads (Use_Expression_With_Actions): New switch. From-SVN: r160931
2010-06-17[multiple changes]Arnaud Charlet1-0/+5
2010-06-17 Robert Dewar <dewar@adacore.com> * exp_ch3.adb, exp_ch6.adb, exp_smem.adb, exp_util.adb: Use Ekind_In. * layout.adb, freeze.adb: Use Make_Temporary. 2010-06-17 Jerome Lambourg <lambourg@adacore.com> * exp_ch11.adb (Expand_N_Raise_Statement): Expand raise statements in .NET/JVM normally as this is now perfectly supported by the backend. 2010-06-17 Pascal Obry <obry@adacore.com> * gnat_rm.texi: Fix minor typo, remove duplicate blank lines. 2010-06-17 Vincent Celier <celier@adacore.com> * make.adb (Collect_Arguments_And_Compile): Create include path file only when -x is specified. (Gnatmake): Ditto * opt.ads (Use_Include_Path_File): New Boolean flag, initialized to False. * prj-env.adb (Set_Ada_Paths): New Boolean parameters Include_Path and Objects_Path, defaulted to True. Only create include path file if Include_Path is True, only create objects path file if Objects_Path is True. * prj-env.ads (Set_Ada_Paths): New Boolean parameters Include_Path and Objects_Path, defaulted to True. * switch-m.adb (Scan_Make_Switches): Set Use_Include_Path_File to True when -x is used. 2010-06-17 Ed Schonberg <schonberg@adacore.com> * exp_disp.adb (Build_Interface_Thunk): Use base type of formal to determine whether it has the controlling type, when the formal is an access parameter. 2010-06-17 Eric Botcazou <ebotcazou@adacore.com> * s-crtl.ads (ssize_t): New type. (read): Fix signature. (write): Likewise. * g-socthi.ads: Add 'with System.CRTL' clause. Remove ssize_t and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t. (C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t. (C_Sendmsg): Likewise. * g-socthi.adb (Syscall_Recvmsg): Likewise. (Syscall_Sendmsg): Likewise. (C_Recvmsg): Likewise. (C_Sendmsg): Likewise. * g-socthi-mingw.ads: Add 'with System.CRTL' clause. Remove ssize_t and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t. (C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t. (C_Sendmsg): Likewise. * g-socthi-mingw.adb (C_Recvmsg): Likewise. (C_Sendmsg): Likewise. * g-socthi-vms.ads: Add 'with System.CRTL' clause. Remove ssize_t and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t. (C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t. (C_Sendmsg): Likewise. * g-socthi-vms.adb (C_Recvmsg): Likewise. (C_Sendmsg): Likewise. * g-socthi-vxworks.ads Add 'with System.CRTL' clause. Remove ssize_t and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t. (C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t. (C_Sendmsg): Likewise. * g-socthi-vxworks.adb (C_Recvmsg): Likewise. (C_Sendmsg): Likewise. * g-sercom-linux.adb (Read): Use correct types to call 'read'. (Write): Likewise to call 'write'. * s-os_lib.adb (Read): Use correct type to call System.CRTL.read. (Write): Use correct type to call System.CRTL.write. * s-tasdeb.adb (Write): Likewise. 2010-06-17 Vincent Celier <celier@adacore.com> * prj-proc.adb (Copy_Package_Declarations): Change argument name Naming_Restricted to Restricted. If Restricted is True, do not copy the value of attribute Linker_Options. From-SVN: r160905
2010-06-14[multiple changes]Arnaud Charlet1-1/+4
2010-06-14 Robert Dewar <dewar@adacore.com> * opt.ads (Check_Policy_List): Add some clarifying comments * sem_prag.adb (Analyze_Pragma, case Check): Set Pragma_Enabled flag on rewritten Assert pragma. 2010-06-14 Gary Dismukes <dismukes@adacore.com> * sem_ch6.adb (Check_Overriding_Indicator): Add a special check for controlled operations, so that they will be treated as overriding even if the overridden subprogram is marked Is_Hidden, as long as the overridden subprogram's parent subprogram is not hidden. 2010-06-14 Robert Dewar <dewar@adacore.com> * debug.adb: Entry for gnatw.d no longer specific for while loops * einfo.adb (First_Exit_Statement): New attribute for E_Loop * einfo.ads (First_Exit_Statement): New attribute for E_Loop * sem_ch5.adb (Analyze_Loop_Statement): Check_Infinite_Loop_Warning has new calling sequence to include test for EXIT WHEN. (Analyze_Exit_Statement): Chain EXIT statement into exit statement chain * sem_warn.ads, sem_warn.adb (Check_Infinite_Loop_Warning): Now handles EXIT WHEN case. * sinfo.adb (Next_Exit_Statement): New attribute of N_Exit_Statement node. * sinfo.ads (N_Pragma): Correct comment on Sloc field (points to PRAGMA, not to pragma identifier). (Next_Exit_Statement): New attribute of N_Exit_Statement node 2010-06-14 Robert Dewar <dewar@adacore.com> * sem_res.adb (Resolve_Short_Circuit): Fix sloc of "assertion/check would fail" msg. 2010-06-14 Robert Dewar <dewar@adacore.com> * par-ch2.adb (Scan_Pragma_Argument_Association): Clarify message for missing pragma argument identifier. 2010-06-14 Robert Dewar <dewar@adacore.com> * atree.ads, atree.adb (Ekind_In): New functions 2010-06-14 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**N in stand alone context 2010-06-14 Robert Dewar <dewar@adacore.com> * usage.adb (Usage): Redo documentation of -gnatwa. From-SVN: r160743
2010-06-14[multiple changes]Arnaud Charlet1-2/+2
2010-06-14 Robert Dewar <dewar@adacore.com> * opt.ads, sem.adb, sem_elab.adb: Minor reformatting 2010-06-14 Robert Dewar <dewar@adacore.com> * exp_aggr.adb (Has_Address_Clause): Moved to Exp_Util, and there it is renamed as Has_Following_Address_Clause. * exp_ch3.adb (Needs_Simple_Initialization): Add Consider_IS argument to allow the caller to avoid Initialize_Scalars having an effect. (Expand_N_Object_Declaration): Do not do Initialize_Scalars stuff for scalars with an address clause specified. * exp_ch3.ads (Needs_Simple_Initialization): Add Consider_IS argument to allow the caller to avoid Initialize_Scalars having an effect. * exp_util.adb (Has_Following_Address_Clause): Moved here from Exp_Aggr (where it was called Has_Address_Clause). * exp_util.ads (Has_Following_Address_Clause): Moved here from Exp_Aggr (where it was called Has_Address_Clause). * freeze.adb (Warn_Overlay): Suppress message about overlaying causing problems for Initialize_Scalars (since we no longer initialize objects with an address clause. 2010-06-14 Robert Dewar <dewar@adacore.com> * exp_prag.adb (Expand_Pragma_Check): Set Loc of generated code from condition. 2010-06-14 Gary Dismukes <dismukes@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Debug_Info_Needed on the entity of an implicitly generated postcondition procedure. 2010-06-14 Thomas Quinot <quinot@adacore.com> * sem_ch7.adb (Preserve_Full_Attributes): Propagate Discriminant_Constraint elist from full view to private view. From-SVN: r160720
2009-11-30[multiple changes]Arnaud Charlet1-0/+6
2009-11-30 Javier Miranda <miranda@adacore.com> * exp_ch6.adb, sem_scil.adb (Adjust_SCIL_Node): Add missing management of N_Unchecked_Type_Conversion nodes when searching for SCIL nodes. (Expand_Call): Adjust decoration of SCIL node associated with relocated function call. 2009-11-30 Emmanuel Briot <briot@adacore.com> * prj-env.adb (Add_To_Source_Path): Preserve casing of directories 2009-11-30 Vincent Celier <celier@adacore.com> * opt.ads (No_Split_Units): New flag initialized to False 2009-11-30 Jerome Lambourg <lambourg@adacore.com> * exp_ch7.adb (Needs_Finalization): Add comments. * exp_ch3.adb (Make_Predefined_Primitive_Specs): Improve handling of CIL Value types. From-SVN: r154809
2009-11-30[multiple changes]Arnaud Charlet1-0/+14
2009-11-30 Vincent Celier <celier@adacore.com> * gnatlink.adb (Process_Args): Call Executable_Name on argument of -o with Only_If_No_Suffix set to True. * osint.adb (Executable_Name): Do not add executable suffix if there is already a suffix and Only_If_No_Suffix is True. * osint.ads (Executable_Name): New Boolean parameter Only_If_No_Suffix, defaulted to False. 2009-11-30 Javier Miranda <miranda@adacore.com> * exp_atag.adb (Build_TSD): Change argument name because the actual is now the address of a tag (instead of the tag). Update implementation accordingly. (Build_CW_Membership): New implementation. Converted into a procedure because it has an additional out mode parameter. Its implementation has been rewritten to improve the generated code but also to facilitate referencing the relocated object node in the caller. * exp_atag.ads (Build_CW_Membership): Update profile and documentation. * sinfo.ads (N_SCIL_Membership_Test) New_Node. (SCIL_Tag_Value): New field of N_SCIL_Membership_Test nodes. (Is_Syntactic_Field): Add entry of new node. (SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms. * sinfo.adb (SCIL_Related_Node, SCIL_Entity): Update assertions to handle N_SCIL_Membership_Test nodes. (SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms. * sem.adb (Analyze): Add null management for new node. * sem_scil.adb (Find_SCIL_Node): Add null management for new node. (Check_SCIL_Node): Add checks of N_SCIL_Membership_Test nodes. * exp_ch4.adb (Tagged_Membership): Change profile from function to procedure. Add generation of SCIL node associated with class-wide membership test. (Expand_N_In): Complete decoration of SCIL nodes. * exp_intr.adb (Expand_Dispatching_Constructor_Call): Tune call to Build_CW_Membership because its profile has been changed. * exp_util.adb (Insert_Actions): Add null management for new node. * sprint.adb (Sprint_Node_Actual): Handle new node. * gcc-interface/trans.c Add no processing for N_SCIL_Membership_Test nodes. * gcc-interface/Make-lang.in: Update dependencies. 2009-11-30 Ed Schonberg <schonberg@adacore.com> * opt.ads: New flags Init_Or_Norm_Scalars_Config, Initialize_Scalars_Config, to capture the presence of the corresponding pragmas in a configuration file. * opt.adb (Register_, Save_, Set_, Restore_Opt_Configuration_Switches): handle new flags so that they are restored for each compilation unit. * frontend.adb: At the end of compilation, scan the context of the main unit to recover occurrences of pragma Initialize_Scalars, to annotate the ALI file accordingly. From-SVN: r154792
2009-11-30[multiple changes]Arnaud Charlet1-0/+4
2009-11-30 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Add documentation for attribute Result. 2009-11-30 Arnaud Charlet <charlet@adacore.com> * s-osinte-hpux.ads, s-osinte-aix.ads, s-osinte-solaris-posix.ads, s-osinte-tru64.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads (Get_Page_Size): Update comment since Get_Page_Size is now required. 2009-11-30 Jerome Lambourg <lambourg@adacore.com> * freeze.adb: Disable Warning on VM targets concerning C Imports, not relevant. 2009-11-30 Bob Duff <duff@adacore.com> * sprint.adb (Source_Dump): Minor comment fix. (Write_Itype): When writing a string literal subtype, use Expr_Value instead of Intval to get the low bound. 2009-11-30 Vincent Celier <celier@adacore.com> * gnatlink.adb (Process_Args): Do not call Executable_Name on arguments of switch -o. 2009-11-30 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Op_And): Implement pragma Short_Circuit_And_Or (Expand_N_Op_Or): Implement pragma Short_Circuit_And_Or * opt.ads (Short_Circuit_And_Or): New flag * par-prag.adb: Add dummy entry for pragma Short_Circuit_And_Or * sem_prag.adb: Implement pragma Short_Circuit_And_Or * snames.ads-tmpl: Add entries for pragma Short_Circuit_And_Or From-SVN: r154786
2009-10-30[multiple changes]Arnaud Charlet1-1/+1
2009-10-30 Robert Dewar <dewar@adacore.com> * a-tideio.adb: Minor reformatting * a-wtdeio.adb, a-ztdeio.adb: Update comments, code clean up. * a-reatim.adb, a-tideau.adb, a-ngelfu.adb, a-ztdeau.adb, a-ngrear.adb, a-wtedit.adb, a-ststio.adb, a-ztedit.adb: Minor code reorganization (use conditional expressions). 2009-10-30 Ed Schonberg <schonberg@adacore.com> * gnat_ugn.texi: Additional info on gnatw.i and gnatw.I * sem_case.adb: Improved error message. 2009-10-30 Emmanuel Briot <briot@adacore.com> * a-direct.adb, gnatcmd.adb, gnatname.adb, makeutl.adb, opt.ads, osint.adb, prj-ext.adb, switch-m.adb (Follow_Links_For_Dirs): Now defaults to False, and controlled by -eL. * a-direct.adb: Add comments. * osint.adb (File_Stamp): Avoid unneeded duplicate system call From-SVN: r153744
2009-10-30[multiple changes]Arnaud Charlet1-0/+5
2009-10-30 Bob Duff <duff@adacore.com> * s-fileio.adb (Errno_Message): Suppress VMS-specific warning. 2009-10-30 Ed Schonberg <schonberg@adacore.com> * sem_case.adb (Check_Choices): Add explanatory message when there are missing alternatives when the required range of alternatives is given by the base type of the case expression or discriminant in a variant part. * opt.ads: New flag Warn_On_Overlap, to enable warnings on potentially dangerous overlap between actuals in a call, activated by -gnatw.i * sem_warn.adb (Set_Dot_Warning_Switch): set flag. (Warn_On_Overlapping_Actuals): use new flag. * gnat_ugn.texi: Document -gnatw.i, warning on overlapping actuals 2009-10-30 Robert Dewar <dewar@adacore.com> * exp_aggr.adb, exp_ch9.adb: Minor reformatting From-SVN: r153740
2009-07-15[multiple changes]Arnaud Charlet1-1/+1
2009-07-15 Robert Dewar <dewar@adacore.com> * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb, exp_aggr.adb: Minor code reorganization (better calling sequence for Make_Temporary). 2009-07-15 Thomas Quinot <quinot@adacore.com> * opt.ads: Minor comment edits From-SVN: r149672
2009-07-15debug.adb: Add -gnatd.O to output SCO tableRobert Dewar1-0/+6
2009-07-15 Robert Dewar <dewar@adacore.com> * debug.adb: Add -gnatd.O to output SCO table * lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO information. * lib-writ.ads: Document addition of SCO lines to ALI file * par_sco.ads, par_sco.adb: New files. * opt.ads (Generate_SCO): New switch * par.adb (Par): Call SCO_Record to record SCO information * sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition * switch-c.adb: Recognize -gnateS to generate SCO information * usage.adb: Add line for -gnateS * gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1 From-SVN: r149669
2009-07-13[multiple changes]Arnaud Charlet1-6/+7
2009-07-13 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor comment change 2009-07-13 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for type of iteration, to prevent spurious warnings. 2009-07-13 Nicolas Roche <roche@adacore.com> * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always included. 2009-07-13 Arnaud Charlet <charlet@adacore.com> * switch-c.adb, usage.adb, sem_ch9.adb, gnat_ugn.texi, rtsfind.adb, gnat1drv.adb, opt.ads, sem_ch13.adb (Inspector_Mode): Renamed to Generate_SCIL. (CodePeer_Mode): New -gnatC switch. (Adjust_Global_Switches): Adjust settings for Generate_SCIL and CodePeer_Mode. From-SVN: r149578
2009-07-13opt.ads, [...]: Minor reformattingRobert Dewar1-68/+66
2009-07-13 Robert Dewar <dewar@adacore.com> * opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb, prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting From-SVN: r149570
2009-07-13gnat1drv.adb (Adjust_Global_Switches): No longer set Back_Annotate_Rep_Info ↵Arnaud Charlet1-3/+3
in inspector mode. 2009-07-13 Arnaud Charlet <charlet@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): No longer set Back_Annotate_Rep_Info in inspector mode. (Gnat1Drv): Need to call the back-end in inspector mode to generate SCIL * opt.ads: Update comment. From-SVN: r149567
2009-07-13[multiple changes]Arnaud Charlet1-0/+5
2009-07-13 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value * gnat_ugn.texi: Add documentation for -gnatw.m/.M * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset Warn_On_Suspicious_Modulus_Value. * ug_words: Add entries for -gnatw.m/-gnatw.M. * usage.adb: Add lines for -gnatw.m/.M switches. * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M 2009-07-13 Javier Miranda <miranda@adacore.com> * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before reading the Is_Interface attribute of the dispatching type. 2009-07-13 Robert Dewar <dewar@adacore.com> * a-convec.adb: Minor code reorganization (use conditional expressions) From-SVN: r149550
2009-05-06[multiple changes]Arnaud Charlet1-0/+7
2009-05-06 Robert Dewar <dewar@adacore.com> * sem_attr.adb: Add processing for Standard'Compiler_Version 2009-05-06 Arnaud Charlet <charlet@adacore.com> * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb, targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb, opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb (Tagged_Type_Expansion): New flag. Replace use of VM_Target related to tagged types expansion by Tagged_Type_Expansion, since tagged type expansion is not necessarily linked to VM targets. From-SVN: r147182
2009-04-24[multiple changes]Arnaud Charlet1-0/+6
2009-04-24 Vincent Celier <celier@adacore.com> * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag. * prj-nmsc.adb (Check_Library): No error for imports by shared library projects, when --unchecked-shared-lib-imports is used. 2009-04-24 Robert Dewar <dewar@adacore.com> * sem_ch7.adb: Minor reformatting From-SVN: r146693
2009-04-20[multiple changes]Arnaud Charlet1-0/+5
2009-04-20 Eric Botcazou <ebotcazou@adacore.com> * adaint.h (__gnat_lwp_self): Declare on Linux. * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'. 2009-04-20 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement front-end part of -fpreserve-control-flow switch. From-SVN: r146376
2009-04-20[multiple changes]Arnaud Charlet1-3/+4
2009-04-20 Arnaud Charlet <charlet@adacore.com> * opt.ads (Inspector_Mode): Update documentation of this flag. 2009-04-20 Thomas Quinot <quinot@adacore.com> * g-socket.ads: Minor reformatting * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to consider S_resolvLib error codes since we only use the hostLib wrappers. 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration of the Underlying_Record_View after that of the derived type. From-SVN: r146371
2009-04-16* exp_ch4.adb, opt.ads: Minor editing.Arnaud Charlet1-3/+3
From-SVN: r146162
2009-04-16Makefile.rtl: Add entries for s-conca?Robert Dewar1-4/+11
2009-04-16 Robert Dewar <dewar@adacore.com> * Makefile.rtl: Add entries for s-conca? * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior of concatenation expansion * exp_ch4.adb (Expand_Concatenation): Generate calls for certain string cases instead of expanding assignments inline. * opt.ads (Optimize_Size): New flag * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads, s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb, s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads, s-conca9.adb, s-conca9.ads: New file. From-SVN: r146161
2009-04-15[multiple changes]Arnaud Charlet1-3/+3
2009-04-15 Pascal Obry <obry@adacore.com> * adaint.h (__gnat_unlink): Add spec. (__gnat_rename): Likewise. 2009-04-15 Vincent Celier <celier@adacore.com> * prj-nmsc.adb: Minor spelling error corrections in error messages 2009-04-15 Robert Dewar <dewar@adacore.com> * sinfo.ads: Minor comment update * opt.ads: Minor comment updates * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for modular type. 2009-04-15 Ed Schonberg <schonberg@adacore.com> * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function that generates the code needed to update a dispatch table when a primitive operation is declared with a subprogram body without previous spec. Insertion of the generated code is responsibility of the caller. (Make_DT): When building static tables, append the code created by Register_Primitive to update a secondary table after it has been constructed. * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive. * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive on an overriding operation that implements an interface operation only if not building static dispatch tables. 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which does not cause overflow when converted to Duration. Use the safe value as the maximum allowable time delay.. 2009-04-15 Jerome Lambourg <lambourg@adacore.com> * g-comlin.adb (Set_Command_Line): When adding a switch with attached parameter, specify that the delimiter is NUL, otherwise "-j2" will be translated to "-j 2". 2009-04-15 Bob Duff <duff@adacore.com> * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit with_clauses, to avoid code duplication. Change this processing so we always add a with_clause on the main unit if needed. From-SVN: r146102