summaryrefslogtreecommitdiffstats
path: root/gcc/ada
Commit message (Collapse)AuthorAgeFilesLines
...
* 2014-02-24 Thomas Quinot <quinot@adacore.com>charlet2014-02-245-12/+39
| | | | | | | | | | | | | | | | | | | | * g-sercom-mingw.adb (Open): Fix incorrect test for error return value. * erroutc.adb: Minor reformatting. 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Check_Clause_Syntax): Account for a solitary input item in a dependency list. 2014-02-24 Yannick Moy <moy@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Do not use validity checks at all in GNATprove_Mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208089 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Robert Dewar <dewar@adacore.com>charlet2014-02-247-30/+42
| | | | | | | | | * g-sercom-mingw.adb, g-sercom-linux.adb, sem_prag.adb, freeze.adb, atree.adb, atree.ads: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208088 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-245-94/+607
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_ch6.adb (Analyze_Subprogram_Body_Contract): Do not enforce global and dependence refinement when SPARK_Mode is off. * sem_ch7.adb (Analyze_Package_Body_Contract): Do not enforce state refinement when SPARK_Mode is off. * sem_ch13.adb (Analyze_Aspect_Specifications): Add local variable Decl. Insert the generated pragma for Refined_State after a potential pragma SPARK_Mode. * sem_prag.adb (Analyze_Depends_In_Decl_Part): Add local constant Deps. Remove local variable Expr. Check the syntax of pragma Depends when SPARK_Mode is off. Factor out the processing for extra parenthesis around individual clauses. (Analyze_Global_In_Decl_List): Items is now a constant. Check the syntax of pragma Global when SPARK_Mode is off. (Analyze_Initializes_In_Decl_Part): Check the syntax of pragma Initializes when SPARK_Mode is off. (Analyze_Part_Of): Check the syntax of the encapsulating state when SPARK_Mode is off. (Analyze_Pragma): Check the syntax of pragma Abstract_State when SPARK_Mode is off. Move the declaration order check with respect to pragma Initializes to the end of the processing. Do not verify the declaration order for pragma Initial_Condition when SPARK_Mode is off. Do not complain about a useless package refinement when SPARK_Mode is off. (Analyze_Refined_Depends_In_Decl_Part): Refs is now a constant. Check the syntax of pragma Refined_Depends when SPARK_Mode is off. (Analyze_Refined_Global_In_Decl_Part): Check the syntax of pragma Refined_Global when SPARK_Mode is off. (Analyze_Refined_State_In_Decl_Part): Check the syntax of pragma Refined_State when SPARK_Mode is off. (Check_Dependence_List_Syntax): New routine. (Check_Global_List_Syntax): New routine. (Check_Initialization_List_Syntax): New routine. (Check_Item_Syntax): New routine. (Check_State_Declaration_Syntax): New routine. (Check_Refinement_List_Syntax): New routine. (Has_Extra_Parentheses): Moved to the top level of Sem_Prag. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208087 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Robert Dewar <dewar@adacore.com>charlet2014-02-2410-110/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * a-tags.adb, s-os_lib.adb: Minor reformatting. 2014-02-24 Thomas Quinot <quinot@adacore.com> * g-sercom-mingw.adb, g-sercom-linux.adb (Raise_Error): Include strerror message, not just numeric errno value. 2014-02-24 Doug Rupp <rupp@adacore.com> * raise-gcc.c (exception_class_eq): Make endian neutral. 2014-02-24 Ed Schonberg <schonberg@adacore.com> * atree.ads, atree,adb (Copy_Separate_Tree): Remove Syntax_Only flag, and reset Etype and Analyzed attributes unconditionally when copying a tree that may be partly analyzed. * freeze.adb: Change calls to Copy_Separate_Tree accordingly. * sem_ch6.adb (Check_Inline_Pragma): If the Inline pragma appears within a subprogram body and applies to it, remove it from the body before making a copy of it, to prevent spurious errors when analyzing the copied body. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208086 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix header.charlet2014-02-241-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208085 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Updatecharlet2014-02-241-2/+0
| | | | | | | deps. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208084 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Thomas Quinot <quinot@adacore.com>charlet2014-02-2410-581/+377
| | | | | | | | | | | | | | | | | | | | | | | | | | | * s-os_lib.adb (Errno_Message): Do not depend on Integer'Image. * s-oscons-tmplt.c: On VxWorks, include adaint.h only after vxWorks.h has been included. Also ensure that file attributes related definitions are output even in cases where socket support is not enabled. * a-tags.adb: Code clean up. * Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Use -iquote instead of -I to add the main ada source directory to the header search path, in order to avoid conflict between our own "types.h" and VxWork's <types.h>. 2014-02-24 Robert Dewar <dewar@adacore.com> * atree.ads, atree.adb (Copy_Separate_Tree): Add Syntax_Only parameter. * debug.adb: Remove documentation of -gnatd.X, no longer used. * freeze.adb (Wrap_Imported_Subprogram): Fixed and activated. 2014-02-24 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Improve documentation of gnatpp. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208083 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Thomas Quinot <quinot@adacore.com>charlet2014-02-2412-96/+74
| | | | | | | | | | | | | * g-stheme.adb, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads, g-stseme.adb, g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads, g-socket.adb (Host_Error_Message): Return a string, not a chars_ptr, because on Windows this is a renaming of Socket_Error_Message. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208082 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Robert Dewar <dewar@adacore.com>charlet2014-02-2414-128/+163
| | | | | | | | | | | | | | | | | * a-direct.adb, sem_ch5.adb, a-cfdlli.adb, a-cfhase.adb, a-tags.adb, s-filatt.ads, a-cforma.adb, sem_ch6.adb, g-socthi-mingw.adb, a-cfhama.adb, a-cforse.adb, a-cofove.adb: Minor reformatting and code reorganization. 2014-02-24 Thomas Quinot <quinot@adacore.com> * Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Make sure that the source directory containing s-oscons-tmplt.c is on the include path, so that all internal header files are available. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208081 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Ed Schonberg <schonberg@adacore.com>charlet2014-02-242-2/+17
| | | | | | | | | | * sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the domain of iteration is an attribute reference 'Old, this is an Ada 2012 iterator and the loop must be rewritten as such. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208080 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Thomas Quinot <quinot@adacore.com>charlet2014-02-2420-257/+160
| | | | | | | | | | | | | | | | | | | | | | | | * s-fileio.adb (Errno_Message): Remove, use shared version from s-os_lib instead. * s-crtrun.ads, Makefile.rtl: Remove now unused unit. * g-stseme (Socket_Error_Message): Reimplement in terms of new s-os_lib function. * g-socthi.ads, g-socthi.adb: Change profile of Socket_Error_Message to return String to allow the above. * g-socket.adb, g-socthi-mingw.adb, g-socthi-mingw.ads, * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, * g-socthi-vxworks.ads: Update to account for the above profile change. * a-tags.adb: Use strlen builtin binding provided by s-crtl. * s-crtl.ads (strncpy): New procedure. * s-os_lib.adb (Copy_Attributes): Import just once (strncpy): Use import from s-crtl. * a-envvar.adb, osint.adb: Use imports of C runtime functions from s-crtl instead of re-importing locally. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208079 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-2430-534/+829
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_prag.adb (Analyze_Global_Item): Emit the variable related checks concerning volatile objects only when SPARK_Mode is on. 2014-02-24 Robert Dewar <dewar@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): use Error_Msg_Ada_2012_Feature. 2014-02-24 Jose Ruiz <ruiz@adacore.com> * s-rident.ads (Profile_Info): For Ravenscar, the restrictions No_Local_Timing_Events and No_Specific_Termination_Handlers must be set, according to the Ravenscar profile definition in D.13(6/3). 2014-02-24 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): If this is a completion, freeze return type and its designated type if needed. 2014-02-24 Thomas Quinot <quinot@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Address): When moving initialization statements to a freeze entity, keep them under a single node (i.e. do not unwrap expressions with actions), and set the Initialization_Statements attribute again so that processing of a later pragma Import can still remove them. 2014-02-24 Claire Dross <dross@adacore.com> * a-cfdlli.adb, a-cfdlli.ads, a-cfhama.adb, a-cfhama.ads, a-cfhase.adb, a-cfhase.ads, a-cforma.adb, a-cforma.ads, a-cforse.adb, a-cforse.ads, a-cofove.adb, a-cofove.ads: Rename Left/Right to First_To_Previous/Current_To_Last. 2014-02-24 Thomas Quinot <quinot@adacore.com> * adaint.h (struct file_attributes): New component "error" (__gnat_error_attributes): Accessor for the above. * adaint.c (__gnat_error_attributes): New subprogram (__gnat_stat): Fix returned value (expect errno value) (__gnat_stat_to_attr): Add management of error component (set to stat errno value, except for missing files where it is set to 0, and exists is set to 0). * osint.ads (File_Attributes_Size): Update per change above, also clarify documentation. * s-filatt.ads: New file, binding to file attributes related functions. * Makefile.rtl (s-filatt): New runtime unit. * s-crtl.ads (strlen): Expose binding to GCC builtin (falls back to library function if not available on target). * s-os_lib.ads, s-os_lib.adb (Errno_Message): New subprogram. * s-oscons-tmplt.c (SIZEOF_struct_file_attributes, SIZEOF_struct_dirent_alloc): New constants. * Make-generated.in (s-oscons.ads): Now requires adaint.h. * a-direct.adb (Fetch_Next_Entry): Fix incorrect buffer sizes. Perform appropriate error checking if stat fails (do not just ignore existing files if stat fails) * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208078 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-243-101/+180
| | | | | | | | | | | | | | | | | | | | * sem_prag.adb (Analyze_Global_Item): Move the check concerning the use of volatile objects as global items in a function to the variable related checks section. * sem_util.adb (Async_Readers_Enabled): Directly call Has_Enabled_Property. (Async_Writers_Enabled): Directly call Has_Enabled_Property. (Effective_Reads_Enabled): Directly call Has_Enabled_Property. (Effective_Writes_Enabled): Directly call Has_Enabled_Property. (Has_Enabled_Property): Rename formal parameter State_Id to Item_Id. Update the comment on usage. State_Has_Enabled_Property how handles the original logic of the routine. Add processing for variables. (State_Has_Enabled_Property): New routine. (Variable_Has_Enabled_Property): New routine. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208077 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Robert Dewar <dewar@adacore.com>charlet2014-02-2417-118/+345
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sinfo.ads, sem_ch12.adb, sem_res.adb, sem_ch4.adb, par-ch12.adb: Minor reformatting. * atree.ads, atree.adb (Node35): New function. (Set_Node35): New procedure. * debug.adb: Define new debug flag -gnatd.X. * einfo.ads, einfo.adb (Import_Pragma): New field. * freeze.adb (Wrap_Imported_Procedure): New procedure (not really active yet, has to be activated with -gnatd.X. * sem_prag.adb (Set_Imported): Set new Import_Pragma field (Set_Imported): Don't set Is_Public (see Freeze.Wrap_Imported_Subprogram) * par-ch3.adb (P_Component_List): Handle unexpected null component. 2014-02-24 Yannick Moy <moy@adacore.com> * sem_ch3.adb: Correct reference to SPARK RM in error messages. * gnat_rm.texi: Correct documentation of attribute Update. 2014-02-24 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): Reject container iterator in older versions of Ada. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208076 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Gary Dismukes <dismukes@adacore.com>charlet2014-02-247-28/+33
| | | | | | | | | * sem_ch5.adb, sem_aux.ads, sem_ch12.adb, gnat_ugn.texi, par.adb, par-ch12.adb: Change spelling 'parametrization' to 'parameterization'. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208075 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Ed Schonberg <schonberg@adacore.com>charlet2014-02-245-22/+185
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sinfo.ads, sinfo.adb: New attribute Generalized_Indexing, for indexed_components that are instances of Ada 2012 container indexing operations. Analysis and resolution of such nodes is performed on the attribute, and the original source is preserved for ASIS operations. If expansion is enabled, the indexed component is replaced by the value of this attribute, which is in a call to an Indexing aspect, in most case wrapped in a dereference operation. * sem_ch4.adb (Analyze_Indexed_Component): Create Generalized_Indexing attribute when appropriate. (Analyze_Call): If prefix is not overloadable and has an indexing aspect, transform into an indexed component so it can be analyzed as a potential container indexing. (Analyze_Expression): If node is an indexed component with a Generalized_ Indexing, do not re-analyze. * sem_res.adb (Resolve_Generalized_Indexing): Complete resolution of an indexed_component that has been transformed into a container indexing operation. (Resolve_Indexed_Component): Call the above when required. (Resolve): Do not insert an explicit dereference operation on an indexed_component whose type has an implicit dereference: the operation is inserted when resolving the related Generalized_Indexing. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208074 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Olivier Ramonat <ramonat@adacore.com>charlet2014-02-244-15/+26
| | | | | | | | | | | | | | | | | | * gnat_rm.texi, gnat_ugn.texi: Replace Ada Compiler by Ada Development Environment. 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Check_Constituent_Usage): Remove leading spaces in error messages. (Inconsistent_Mode_Error): Remove leading spaces in error messages. Merge the expected and available mode errors. (Report_Unused_Constituents): Remove leading spaces in error messages. (Report_Unused_States): Remove leading spaces in error messages. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208073 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Thomas Quinot <quinot@adacore.com>charlet2014-02-246-47/+78
| | | | | | | | | | | | | | | | | | | * par_sco.adb (Traverse_One): Refine categorization of statement SCOs. 2014-02-24 Robert Dewar <dewar@adacore.com> * aspects.ads, aspects.adb: Remove aspects Ada_2005 and Ada_2012, Pure_05, Pure_12 and Preelaborate_05. * gnat_rm.texi: Update accordingly. * sem_prag.adb: Document one argument form of Ada_05/Ada_2005 pragmas Document one argument form of Ada_12/Ada_2012 pragmas Recognize one argument form of these pragmas only in GNAT mode (-gnatg). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208072 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Ed Schonberg <schonberg@adacore.com>charlet2014-02-249-26/+164
| | | | | | | | | | | | | | | | | | | | | | * s-dimmks.ads: Replace symbol for temperature, previously the Greek letter Theta, by the ASCII @ sign. * s-diflio.ads: ditto. 2014-02-24 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor code reorganization (use OR for boolean variables). * sem_ch3.adb, sem_prag.adb, freeze.adb: Minor reformatting. 2014-02-24 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi, projects.texi: Added the necessary conditionalization so that references to gnatmem and ASIS tools do not appear in the FSF edition of the GNAT User's Guide. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208071 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Yannick Moy <moy@adacore.com>charlet2014-02-2415-86/+203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * freeze.adb (Freeze_Entity): Do not issue warning for pre/post being ignored on imported subprogram in GNATprove mode. 2014-02-24 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, sem_ch5.adb, sem_type.adb, sem_res.adb, sem_attr.adb, stand.ads, sem_eval.adb: Minor reformatting. 2014-02-24 Yannick Moy <moy@adacore.com> * sem_prag.adb: Minor rewording in error message. 2014-02-24 Johannes Kanig <kanig@adacore.com> * exp_util.adb (Expand_Subtype_From_Expr): Do not expand subtypes in GNATprove_mode, gnat2why doesn't need nor use these types. 2014-02-24 Gary Dismukes <dismukes@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): On the AAMP target, in the case of signed integer exponentiation that uses a run-time routine, always select the Exp_* versions, since overflow checking is automatically done by AAMP arithmetic instructions. 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): When the related context is a package instace, insert pragma Abstract_State after all internally-generated renamings related to the instance "header". 2014-02-24 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Analyze_Declarations): Analyze Contract of abstract subprograms. * sem_disp.adb (Check_Dispatching_Context): A non-dispatching call to an abstract subprogram is legal if it appears in a pre/postcondition of another abstract operation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208070 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-24 Sergey Rybin <rybin@adacore.com frybin>charlet2014-02-247-19/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnat_ugn.texi: Misc updates. 2014-02-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_prag.adb (Expand_Old): Set the type of the generated temporary. 2014-02-24 Gary Dismukes <dismukes@adacore.com> * layout.adb (Layout_Variant_Record): Instantiate Generic_Check_Choices and call Check_Choices before calling Build_Discr_Checking_Funcs, since we need Others_Discrete_Choices set to prevent generating incorrect discriminant-checking functions for 'others' variants (functions that unconditionally return True rather than accounting for the values covered by the 'others' choice). * sem_eval.ads (Subtypes_Statically_Compatible): Add formal Formal_Derived_Matching. (Subtypes_Statically_Match): Add formal Formal_Derived_Matching. * sem_eval.adb (Subtypes_Statically_Compatible): Pass new Formal_Derived_Matching formal to Subtypes_Statically_Match. (Subtypes_Statically_Match): Suppress the Object_Size matching test in the case where Formal_Derived_Matching is True. * sem_ch12.adb (Validate_Derived_Type_Instance): Pass True for Formal_Derived_Matching_Formal on the call to Subtypes_Statically_Compatible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208068 138bc75d-0d04-0410-961f-82ee72b054a4
* gnattools/ebotcazou2014-02-232-2/+6
| | | | | | | | | * Makefile.in (TOOLS_FLAGS_TO_PASS_CROSS): Robustify. gcc/ada/ * gcc-interface/Make-lang.in (ADA_TOOLS_FLAGS_TO_PASS): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208053 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils2.c (build_simple_component_ref): Fix formatting.ebotcazou2014-02-232-22/+51
| | | | | | | | | Look through a conversion between original and packable version to get the base object. (build_component_ref): Rework comment and fix formatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208051 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Sergey Rybin <rybin@adacore.com frybin>charlet2014-02-206-11/+53
| | | | | | | | | | | | | | | | * gnat_ugn.texi, vms_data.ads (gnatelim): Add description of project-specific options. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * a-cbdlli.adb (Insert): When capacity exceeded, raise Capacity_Error, not Constraint_Error. * a-cbmutr.adb (Append_Child, Insert_Child, Prepend_Child): Ditto. * sem_ch5.adb: Code clean up. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207954 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-206-128/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_prag.adb (Usage_Error): Remove local constant Typ. Remove the specialized diagnostics for unconstrained or tagged items as those are not part of the explicit input set of the related subprogram and should not be flagged. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb: Add guard to preserve all errors. 2014-02-20 Vincent Celier <celier@adacore.com> * switch-m.adb (Normalize_Compiler_Switches): Take into account switches that are recorded in ALI files: -gnateA, -gnateE, -gnateF, -gnateinn, -gnateu, -gnateV and -gnateY. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): Check legality of an element iterator form over a formal container with an Iterable aspect. * exp_ch5.adb (Build_Formal_Container_Iteration): Utility to create declaration and loop statements for both forms of container iterators. (Expand_Formal_Container_Element_Iterator): New procedure to handle loops of the form "for E of C" when C is a formal container. (Expand_Formal_Container_Iterator): Code cleanup. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207953 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-205-184/+410
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_prag.adb (Add_Item_To_Name_Buffer): New routine. (Analyze_Contract_Case): Remove the use of "may". Replace "aspect Contract_Cases" to avoid categorization of aspect vs pragma. (Analyze_External_Property_In_Decl_Part): Remove the use of "formal". (Analyze_Global_Item): Remove the use of "formal", specify the subprogram. Split the error message about a state with visible refinement into two. Remove the use of "global" from "volatile global item". (Analyze_Initialization_Item): Ensure that the SPARK RM reference is on one line. (Analyze_Input_Output): Update the call to Check_Mode. Specify the duplicated item. Reword the error message concerning an input of a null output list. Use "\" for error message continuation. (Analyze_Part_Of): Remove the use of "may". Use "\" for error message continuation. (Analyze_Refined_Depends_In_Decl_Part): Update the error message concerning a useless refinement to match the format of Refined_Global. (Analyze_Refined_Global_In_Decl_Part): Reword the error message concerning a useless refinement. (Analyze_Refinement_Clause): Use "\" for error message continuation. (Check_Constituent_Usage): Use "\" for error message continuation. (Check_Dependency_Clause): Use "\" for error message continuation. (Check_Matching_Constituent): Use "\" for error message continuation. (Check_Missing_Part_Of): Use "\" for error message continuation. (Check_Mode): Renamed to Check_Role. Update the comment on usage. Redo the error reporting to use Role_Error. (Check_Mode_Restriction_In_Enclosing_Context): Use "\" for error message continuation. (Find_Mode): Renamed to Find_Role. Update the parameter profile along with comment on usage. Update all occurrences of Is_Input and Is_Output. (Inconsistent_Mode_Error): Use "\" for error message continuation. (Input_Match): Use "\" for error message continuation. (Role_Error): New routine. (Set_Convention_From_Pragma): Use "\" for error message continuation. (Usage_Error): Add local variable Error_Msg. Build specialized error message showcasing the offending item kind. Redo the diagnostics for unconstrained types. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Is_Iterated_Container): Use high-level primitives to determine whether a type is a container type, rather than examining only its type declaration, so that subtypes and derived types are handled properly. 2014-02-20 Sergey Rybin <rybin@adacore.com frybin> * gnat_ugn.texi: gnatmetric: add description of project-specific options. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Analyze_Attribute, case 'Update): Verify that all choices in an association for a record type have the same type, as is done for record aggregates. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207952 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-2014-223/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * a-cborma.adb, a-cbhama.adb, a-cbdlli.adb, a-cbmutr.adb: Use pragma Unmodified rather than Warnings (Off). Make comments uniform in the four affected units. 2014-02-20 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Object_Size): For non-scalar types allow any value that is a multiple of 8. * gnat_rm.texi: Document Object_Size for composites more clearly. 2014-02-20 Yannick Moy <moy@adacore.com> * sem_util.ads, sem_util.adb (Default_Initialization): Remove function. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * stand.ads: Raise_Type: new predefined entity, used as the type of a Raise_Expression prior to resolution. * cstand.adb: Build entity for Raise_Type. * sem_ch11.adb (Analyze_Raise_Expression): use Raise_Type as the initial type of the node. * sem_type.adb (Covers): Raise_Type is compatible with all other types. * sem_res.adb (Resolve): Remove special handling of Any_Type on Raise_Expression nodes. (Resolve_Raise_Expression): Signal ambiguity if the type of the context is still Raise_Type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207950 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-206-83/+143
| | | | | | | | | | | | | | | | | * sem_ch12.adb (Validate_Access_Type_Instance): Add message if mismatching predicates. * sem_ch6.adb (Check_Conformance): Give better messages on predicate mismatch. * sem_eval.adb (Predicates_Match): Move to spec. * sem_eval.ads (Predicates_Match): Moved here from body. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * a-cbmutr.adb: Use default value in Insert_Child. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207949 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Vincent Celier <celier@adacore.com>charlet2014-02-2012-34/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnatcmd.adb, make.adb, prj-makr.adb, clean.adb: Call Stringt.Initialize in all project aware tools. 2014-02-20 Doug Rupp <rupp@adacore.com> * gnat_ugn.texi: Document gnatbind -X option. * vms_data.ads: Minor warnings documentation reformatting. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Expand_Freeze_Array_Type): Only create invariant procedure for a base type. 2014-02-20 Robert Dewar <dewar@adacore.com> * sem_ch4.adb (Analyze_Case_Expression): Get type from first expression with type info. * sem_ch13.adb: Minor reformatting. * sem_eval.adb (Subtypes_Statically_Match): Make sure we return False if predicates do not match on the two types. 2014-02-20 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Analyze_Pragma [pragma Attach_Handler]): In Relaxed_RM_Semantics mode, allow any static integer value, for compatibility with other compilers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207948 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Vincent Celier <celier@adacore.com>charlet2014-02-2011-17/+113
| | | | | | | | | | | | | | | | | | | | | | | * errutil.adb (Initialize): Properly initialize entry in table Warnings when warnings are suppressed. 2014-02-20 Robert Dewar <dewar@adacore.com> * s-os_lib.ads: Add warning about non-portability of Rename_File. * sem_util.ads, sem_util.adb (Is_Junk_Name): New function. * sem_warn.adb: Use Is_Junk_Name to suppress some warnings. * gnat_ugn.texi: Document no warnings on junk variable names. * layout.adb: Minor code reorganization (use Ekind_In). * stringt.adb: Move initialization of Null_String_Id to Initialize routine. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb: Initialize optional Element_Id. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207947 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-2012-24/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * s-os_lib.ads (Rename_File): Minor commment addition. 2014-02-20 Thomas Quinot <quinot@adacore.com> * einfo.ads: Minor reformatting. 2014-02-20 Hristian Kirtchev <kirtchev@adacore.com> * aspects.adb (Exchange_Aspects): New routine. * aspects.ads (Exchange_Aspects): New routine. * atree.adb (Rewrite): Do not check whether the save node has aspects as it never will, instead check the node about to be clobbered. * einfo.adb (Write_Field25_Name): Abstract_States can appear in entities of generic packages. * sem_ch6.adb (Analyze_Expression_Function): Fix the parent pointer of an aspect specification list after rewriting takes place. * sem_ch7.adb (Analyze_Package_Body_Helper): Swap the aspect specifications of the generic template and the copy used for analysis. * sem_ch12.adb (Analyze_Generic_Package_Declaration): Swap the aspect specifications of the generic template and the copy used for analysis. (Analyze_Package_Instantiation): Propagate the aspect specifications from the generic template to the instantiation. (Build_Instance_Compilation_Unit_Nodes): Propagate the aspect specifications from the generic template to the instantiation. * sem_ch13.adb (Analyze_Aspect_Specifications): Handle aspects Abstract_State, Initializes and Initial_Condition when they apply to a package instantiation. 2014-02-20 Robert Dewar <dewar@adacore.com> * stringt.adb: Add call to Initialize in package initialization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207946 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-2026-95/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * a-crbtgk.adb, a-cihama.adb, a-coinve.adb, a-ciorse.adb, a-crbtgo.adb, a-cidlli.adb, a-cimutr.adb, a-cihase.adb, a-cohama.adb, a-coorse.adb, a-chtgke.adb, a-chtgop.adb, a-comutr.adb, a-ciorma.adb, a-cobove.adb, a-convec.adb, a-cohase.adb, a-chtgbk.adb, a-chtgbo.adb: Minor reformatting. 2014-02-20 Bob Duff <duff@adacore.com> * s-os_lib.ads: Minor: Remove incorrect comment. 2014-02-20 Robert Dewar <dewar@adacore.com> * sem_elab.adb (Check_Elab_Assign): Clearer warning message. 2014-02-20 Vincent Celier <celier@adacore.com> * gnat_rm.texi: Minor syntax error fix. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * a-cborma.adb (Assign): When creating a node without a specified element, insert an uninitialized element in the map, because the instance may provide an element type with a default initialization, e.g a scalar with a Default_Value aspect. * a-cbhama.adb (Assign_Key): Remove useless Allocate procedure. (Insert): In the version without explicit element, provide an uninitialized element, as above. * a-cbdlli.adb (Append): In the version without explicit element, provide an uninitalized element, as above. (Allocate): Remove unused version. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207945 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-205-8/+25
| | | | | | | | | | | | | | | | * sem_elab.adb: Minor code reorganization (use Nkind_In). * stringt.adb: Remove temporary pragma Warnings (Off). * stringt.ads: Add pragma Elaborate_Body to ensure initialization of Null_String_Id. 2014-02-20 Matthew Heaney <heaney@adacore.com> * a-chtgbk.adb (Replace): Use correct offset when calculating bucket index. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207944 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Ed Schonberg <schonberg@adacore.com>charlet2014-02-2015-57/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_ch5.adb (Analyze_Iterator_Specification): Initialize properly the cursor type for subsequent volatile testing in SPARK mode, when domain is a formal container with an Iterabe aspect. 2014-02-20 Robert Dewar <dewar@adacore.com> * errout.adb (Set_Warnings_Mode_Off): Add Reason argument. (Set_Specific_Warning_Off): Add Reason argument. * errout.ads (Set_Warnings_Mode_Off): Add Reason argument. (Set_Specific_Warning_Off): Add Reason argument. * erroutc.adb (Warnings_Entry): Add Reason field (Specific_Warning_Entry): Add Reason field. (Warnings_Suppressed): return String_Id for Reason. (Warning_Specifically_Suppressed): return String_Id for Reason. * erroutc.ads (Warnings_Entry): Add Reason field. (Specific_Warning_Entry): Add Reason field. (Set_Specific_Warning_Off): Add Reason argument. (Set_Warnings_Mode_Off): Add Reason argument. (Warnings_Suppressed): return String_Id for Reason. (Warning_Specifically_Suppressed): return String_Id for Reason. * errutil.adb (Warnings_Suppressed): returns String_Id for Reason (Warning_Specifically_Suppressed): returns String_Id for Reason * gnat_rm.texi: Document that Warning parameter is string literal or a concatenation of string literals. * par-prag.adb: New handling for Reason argument. * sem_prag.adb (Analyze_Pragma, case Warning): New handling for Reason argument. * sem_util.ads, sem_util.adb (Get_Reason_String): New procedure. * sem_warn.ads (Warnings_Off_Entry): Add reason field. * stringt.adb: Set Null_String_Id. * stringt.ads (Null_String_Id): New constant. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207943 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-20 Robert Dewar <dewar@adacore.com>charlet2014-02-2041-1634/+1692
| | | | | | | | | | | | | | | | | | | | | | | * einfo.ads: Minor comment addition: Etype of package is Standard_Void_Type. * checks.adb, exp_aggr.adb, exp_atag.adb, exp_attr.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb, exp_dbug.adb, exp_disp.adb, exp_imgv.adb, exp_intr.adb, exp_prag.adb, exp_sel.adb, exp_strm.adb, exp_util.adb, freeze.adb, rtsfind.adb, sem_aggr.adb, sem_attr.adb, sem_ch10.adb, sem_ch12.adb, sem_ch13.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_dim.adb, sem_prag.adb, sem_res.adb, sem_util.adb, tbuild.adb, tbuild.ads: Remove New_Reference_To. Replace all calls with calls to New_Occurrence_Of. 2014-02-20 Robert Dewar <dewar@adacore.com> * par-util.adb (Ignore, case of right paren): Make this a serious error. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207942 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-197-21/+23
| | | | | | | | | | | | | | | * sem_ch5.adb, sem_prag.adb, sem_attr.adb: Minor reformatting. * debug.adb: Remove -gnatd.X switch, no longer used. * styleg.adb (Check_Then): Remove check of -gnatd.X, check is now always made. 2014-02-19 Bob Duff <duff@adacore.com> * g-socket.ads: Minor: Correct some comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207907 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Ed Schonberg <schonberg@adacore.com>charlet2014-02-195-18/+53
| | | | | | | | | | | | | | | | | | | | * sem_ch5.adb: Inhibit iterator rewriting in ASIS mode. 2014-02-19 Arnaud Charlet <charlet@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Do not generate an error on out of range priorities if Relaxed_RM_Semantics. * sem_prag.adb (Analyze_Pragma): Ditto. 2014-02-19 Bob Duff <duff@adacore.com> * sem_attr.adb (Resolve_Attribute): Detect the case of F'Access where F denotes the renaming of an enumeration literal, and issue a specialized error message. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207906 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Matthew Heaney <heaney@adacore.com>charlet2014-02-1925-768/+1740
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * a-chtgop.ads (Checked_Index): New operation. (Next): Changed mode of hash table. * a-chtgop.adb (Adjust, Delete_Node_Sans_Free): Detect tampering (Generic_Read, Reserve_Capacity): Ditto. (Generic_Equal): Detect tampering. (Next): Changed mode of hash table, detect tampering. * a-chtgke.ads (Checked_Index, Checked_Equivalent_Keys): New operation. (Find): Changed mode of hash table. * a-chtgke.adb (Checked_Equivalent_Keys): New operation (Delete_Key_Sans_Free, Generic_Conditional_Insert): Detect tampering. (Find): Changed mode of hash table, check for tampering. (Generic_Replace_Element): Check for tampering. * a-chtgbk.ads (Checked_Index, Checked_Equivalent_Keys): New operation. * a-chtgbk.adb (Checked_Index, Checked_Equivalent_Keys): New operation (Delete_Key_Sans_Free, Generic_Conditional_Insert): Detect tampering. (Find, Generic_Replace_Element): Check for tampering. * a-chtgbo.ads (Checked_Index): New operation. * a-chtgbo.adb (Checked_Index): New operation (Delete_Node_Sans_Free, Generic_Equal): Detect tampering. (Generic_Read, Next): Ditto. * a-cohase.adb, a-cihase.adb (Is_In): Changed mode of hash table (Difference, Intersection): Use variable view of source, detect tampering (Find, Is_Subset, Overlap): Use variable view of container (Symmetric_Difference, Union): Detect tampering (Vet): Use Checked_Index to detect tampering (Constant_Reference, Element, Find): Use variable view of container. (Update_Element_Preserving_Key): Detect tampering. * a-cbhase.adb (Difference, Find, Is_In): Use variable view of container. (Is_Subset): Ditto. (Equivalent_Sets, Overlap): Use Node's Next component. (Vet): Use Checked_Index to detect tampering. (Constant_Reference, Element, Find): Use variable view of container. (Update_Element_Preserving_Key): Detect tampering. * a-cohama.adb, a-cihama.adb, a-cbhama.adb (Constant_Reference, Element, Find): Use variable view of container. (Reference): Rename hash table component. (Vet): Use Checked_Index to detect tampering. 2014-02-19 Arnaud Charlet <charlet@adacore.com> * adabkend.adb (Scan_Compiler_Arguments): Add missing handling of -nostdinc. 2014-02-19 Thomas Quinot <quinot@adacore.com> * tbuild.adb (New_Occurrence_Of, New_Rerefence_To): Guard against calls without Def_Id. 2014-02-19 Claire Dross <dross@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Add global annotations to subprograms. 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Initial_Condition_In_Decl_Part): Remove constants Errors, Pack_Id and Pack_Init. Remove variable Vars. Initial_Condition no longer requires the presence of pragma Initialized. Do not try to diagnose whether all variables mentioned in pragma Initializes also appear in Initial_Condition. (Collect_Variables): Removed. (Match_Variable): Removed. (Match_Variables): Removed. (Report_Unused_Variables): Removed. 2014-02-19 Thomas Quinot <quinot@adacore.com> * gnat_rm.texi (pragma Stream_Convert): Minor rewording. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207905 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-198-57/+81
| | | | | | | | | | | | | | | | | | * sem_util.adb, sem_util.ads, prj-conf.adb, s-os_lib.adb: Minor reformatting. 2014-02-19 Vincent Celier <celier@adacore.com> * prj-part.adb (Parse_Single_Project): Use the fully resolved project path, with all symbolic links resolved, to check if the same project is imported with a different unresolved path. * prj-tree.ads (Project_Name_And_Node): Component Canonical_Path changed to Resolved_Path to reflect that all symbolic links are resolved. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207904 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Ed Schonberg <schonberg@adacore.com>charlet2014-02-1910-109/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_util.ads, sem_util.adb (Get_Cursor_Type): Moved to sem_util from sem_ch13, for use elsewhere. * sem_ch13.adb (Get_Cursor_Type): Moved to sem_util. * sem_ch5.adb (Analyze_Iterator_Specification): Set properly the cursor type on the loop variable when the iteration is over o formal container. 2014-02-19 Vincent Celier <celier@adacore.com> * prj-conf.adb (Add_Default_GNAT_Naming_Scheme): Add declaration for an empty Target (Check_Target): Never fail when an empty target is declared in the configuration project. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb (Check_Arg_Is_Local_Name): Argument is local if the pragma comes fron a predicate aspect and the context is a record declaration within the scope that declares the type. 2014-02-19 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Minor clarifications. * expander.adb, sem_aggr.adb: Add comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207903 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Ed Schonberg <schonberg@adacore.com>charlet2014-02-197-9/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_prag.adb (Check_Arg_Is_Local_Name): For an aspect that applies to a subprogram body, the name is the current scope, rather than being declared in the current scope. (Analyze_Pragma, case No_Return): Handle properly a No_Return aspect applied to a subprogram body. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Resolve_Iterable_Operation): Improve resolution of overloaded subprograms, and fix bug in handling of primitive operation Element. 2014-02-19 Pascal Obry <obry@adacore.com> * s-os_lib.adb: Minor reformatting. 2014-02-19 Yannick Moy <moy@adacore.com> * expander.adb (Expand): Do nothing inside generics. * sem_aggr.adb (Aggregate_Constraint_Checks): Do nothing inside generics. 2014-02-19 Yannick Moy <moy@adacore.com> * exp_ch2.adb: Remove useless 'with' of unit Uintp. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207901 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-1912-28/+57
| | | | | | | | | | | | | | | * sem_ch3.adb, style.adb, sem_prag.adb, sem_ch13.adb: Minor reformatting * a-sequio.adb: Remove useless pragma Extensions_Allowed (no longer needed). 2014-02-19 Claire Dross <dross@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Add Iterable aspect to formal containers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207900 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com>charlet2014-02-193-6/+50
| | | | | | | | | | | | | | | | | | | * sem_ch3.adb (Analyze_Declarations): Analyze a package contract at the end of the private declarations (if applicable), otherwise analyze it and the end of the visible declarations. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * style.adb (Missing_Overriding): If subprogram is an instantiation, place warning on the instance node itself, without mention of the original generic. Do not emit message if explicit Ada version is older than the introduction of the overriding indicator. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207895 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Yannick Moy <moy@adacore.com>charlet2014-02-196-185/+315
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnat_rm.texi: Doc clarifications. 2014-02-19 Yannick Moy <moy@adacore.com> * exp_util.adb (Remove_Side_Effects): Do not remove side-effects inside a generic. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Get_Cursor_Type): Obtain cursor type from specified First primitive, rather than by name. (Validate_Iterable_Aspect, Resolve_Iterable_Operation): Use it, and extend error checking for missing primitives and incorrect signatures. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Check_Pragma_Implemented): Detect additional errors when a Synchronization aspect on an overriding protected operation does not match the given aspect on the overridden operation of an ancestor interface. 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Check_Loop_Pragma_Grouping): New routine. (Check_Loop_Pragma_Placement): Update comment on usage. Remove local variables Orig_Stmt and Within_Same_Sequence. Check that the current Loop_Invariant or Loop_Variant pragma is grouped together with other such pragmas. (Is_Loop_Pragma): New routine. (Prev_In_Loop): Removed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207894 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-1926-84/+333
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * par-ch6.adb (P_Return): For extended return, end column lines up with RETURN. * par.adb: Minor documentation clarification. 2014-02-19 Yannick Moy <moy@adacore.com> * sem_prag.adb (Check_Loop_Pragma_Placement): Add check that Loop_Invariant and Loop_Variant appear consecutively. * gnat_rm.texi Update documentation of Loop_Invariant and Loop_Variant pragmas. 2014-02-19 Robert Dewar <dewar@adacore.com> * debug.adb: Document -gnatd.X. * par-ch5.adb (P_If_Statement): Always check THEN, even if not first token (Check_Then_Column): Ditto. * styleg.adb (Check_Then): Allow THEN on line after IF. (Check_Then): Check THEN placement under control of -gnatd.X * styleg.ads (Check_Then): Now called even if THEN is not first token on line. * stylesw.ads (Style_Check_If_Then_Layout): Document new relaxed rules. * gnat_ugn.texi: For -gnatyi, THEN can now be on line after IF. 2014-02-19 Robert Dewar <dewar@adacore.com> * a-cfhama.adb, a-cfhase.adb, a-cforse.adb, a-cofove.adb, a-ngcefu.adb, a-teioed.adb, a-wtedit.adb, a-ztedit.adb, exp_ch5.adb, inline.adb, prj-pp.adb, prj-tree.adb, sem_ch12.adb, sem_ch8.adb, vms_conv.adb: Fix bad layout of IF statements git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207893 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-192-7/+18
| | | | | | | | * exp_util.adb (Side_Effect_Free): Scalar if expressions can be SEF. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207892 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-199-486/+773
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * exp_util.adb: Update comments. 2014-02-19 Doug Rupp <rupp@adacore.com> * bindgen.adb (Gen_Adainit) [VMS] New global Float_Format. * init.c (__gl_float_format): [VMS] New global. (__gnat_set_features): Call FP_CONTROL to set FPSR for the float representation in effect. 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb Add with and use clause for Exp_Prag. (Expand_Contract_Cases): Relocated to Exp_Prag. * exp_ch6.ads (Expand_Contract_Cases): Relocated to Exp_Prag. * exp_prag.adb Add with and use clauses for Checks and Validsw. (Expand_Contract_Cases): Relocated from Exp_Ch6. Update the structure of the expanded code to showcase the evaluation of attribute 'Old prefixes. Add local variable Old_Evals. Expand any attribute 'Old references found within a consequence. Add circuitry to evaluate the prefixes of attribute 'Old that belong to a selected consequence. (Expand_Old_In_Consequence): New routine. * exp_prag.ads (Expand_Contract_Cases): Relocated from Exp_Ch6. * sem_attr.adb (Check_Use_In_Contract_Cases): Warn that a potentially unevaluated prefix is always evaluated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207891 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-1910-668/+862
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * exp_attr.adb (Expand_Min_Max_Attribute): Use Insert_Declaration (Expand_Min_Max_Attribute): Use Matching_Standard_Type. * exp_ch4.adb (Expand_N_Expression_With_Actions): Remove special handling for the case of Modify_Tree_For_C, this approach did not work. * exp_util.adb (Matching_Standard_Type): New function (Side_Effect_Free): New top level functions (from Remove_Side_Effects). * exp_util.ads (Side_Effect_Free): New top level functions (moved from body). * sinfo.ads: Minor comment updates. 2014-02-19 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Expand_Simple_Function_Return): If return type is unconstrained and uses the secondary stack, mark the enclosing function accordingly, to ensure that the value is not prematurely removed. 2014-02-19 Hristian Kirtchev <kirtchev@adacore.com> * par.adb Alphabetize the routines in Par.Sync. (Resync_Past_Malformed_Aspect): New routine. * par-ch13.adb (Get_Aspect_Specifications): Alphabetize local variables. Code and comment reformatting. Detect missing parentheses on aspects [Refined_]Global and [Refined_]Depends with a non-null definition. * par-sync.adb: Alphabetize all routines in this separate unit. (Resync_Past_Malformed_Aspect): New routine. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207890 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Robert Dewar <dewar@adacore.com>charlet2014-02-194-3/+66
| | | | | | | | | * sem_eval.ads, sem_eval.adb (Subtypes_Statically_Match): Return False if Esize values do not match. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207889 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-19 Yannick Moy <moy@adacore.com>charlet2014-02-1911-26/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207888 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud