diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-12 09:10:13 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-12 09:10:13 +0000 |
commit | 30e864df6d529a64c380fc365bdc8f9368cf5e51 (patch) | |
tree | 34e72a80fb14595699c393795268345a17abec04 /gcc/ada/sinfo.ads | |
parent | 5a80f21c5e77531666ddb20fce50ea8b1663cffc (diff) | |
download | gcc-30e864df6d529a64c380fc365bdc8f9368cf5e51.tar.gz |
2010-10-12 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb (Move_Aspects): New procedure.
* atree.ads, atree.adb: (New_Copy): Does not copy aspect specifications
* sinfo.ads, par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb,
par-endh.adb, par-ch13.adb, par-ch12.adb: Modify grammar to include
aspect specifications.
Recognize aspect specifications for all cases
* par.adb: Recognize aspect specifications for all cases
* sem_ch12.ads, sem_ch12.adb (Copy_Generic_Node): Copies aspect
specifications.
* sem_ch3.adb (Analyze_Subtype_Declaration): Improve patch to freeze
generic actual types (was missing some guards before).
* sem_ch9.adb (Analyze_Single_Protected_Declaration): Copy aspects to
generated object
(Analyze_Single_Task_Declaration): Copy aspects to generated object
2010-10-12 Eric Botcazou <ebotcazou@adacore.com>
* usage.adb (usage): Adjust line for -gnatn switch.
2010-10-12 Robert Dewar <dewar@adacore.com>
* sem_attr.adb (Eval_Attribute): Only leave change active for aspect
spec case.
2010-10-12 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Declaration): If this is a
declaration of a null procedure resolve the types of the profile of the
generated null body now.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165353 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sinfo.ads')
-rw-r--r-- | gcc/ada/sinfo.ads | 74 |
1 files changed, 50 insertions, 24 deletions
diff --git a/gcc/ada/sinfo.ads b/gcc/ada/sinfo.ads index ed14a866334..cc2704063ca 100644 --- a/gcc/ada/sinfo.ads +++ b/gcc/ada/sinfo.ads @@ -2120,7 +2120,9 @@ package Sinfo is -- FULL_TYPE_DECLARATION ::= -- type DEFINING_IDENTIFIER [KNOWN_DISCRIMINANT_PART] - -- is TYPE_DEFINITION; + -- is TYPE_DEFINITION + -- [ASPECT_SPECIFICATIONS]; + -- | TASK_TYPE_DECLARATION -- | PROTECTED_TYPE_DECLARATION @@ -2227,11 +2229,14 @@ package Sinfo is -- OBJECT_DECLARATION ::= -- DEFINING_IDENTIFIER_LIST : [aliased] [constant] - -- [NULL_EXCLUSION] SUBTYPE_INDICATION [:= EXPRESSION]; + -- [NULL_EXCLUSION] SUBTYPE_INDICATION [:= EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- | DEFINING_IDENTIFIER_LIST : [aliased] [constant] - -- ACCESS_DEFINITION [:= EXPRESSION]; + -- ACCESS_DEFINITION [:= EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- | DEFINING_IDENTIFIER_LIST : [aliased] [constant] - -- ARRAY_TYPE_DEFINITION [:= EXPRESSION]; + -- ARRAY_TYPE_DEFINITION [:= EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- | SINGLE_TASK_DECLARATION -- | SINGLE_PROTECTED_DECLARATION @@ -2841,7 +2846,8 @@ package Sinfo is -- COMPONENT_DECLARATION ::= -- DEFINING_IDENTIFIER_LIST : COMPONENT_DEFINITION - -- [:= DEFAULT_EXPRESSION]; + -- [:= DEFAULT_EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- Note: although the syntax does not permit a component definition to -- be an anonymous array (and the parser will diagnose such an attempt @@ -4209,7 +4215,9 @@ package Sinfo is -- 6.1 Subprogram Declaration -- --------------------------------- - -- SUBPROGRAM_DECLARATION ::= SUBPROGRAM_SPECIFICATION; + -- SUBPROGRAM_DECLARATION ::= + -- SUBPROGRAM_SPECIFICATION + -- [ASPECT_SPECIFICATIONS]; -- N_Subprogram_Declaration -- Sloc points to FUNCTION or PROCEDURE @@ -4223,7 +4231,8 @@ package Sinfo is ------------------------------------------ -- ABSTRACT_SUBPROGRAM_DECLARATION ::= - -- SUBPROGRAM_SPECIFICATION is abstract; + -- SUBPROGRAM_SPECIFICATION is abstract + -- [ASPECT_SPECIFICATIONS]; -- N_Abstract_Subprogram_Declaration -- Sloc points to ABSTRACT @@ -4640,7 +4649,9 @@ package Sinfo is -- 7.1 Package Declaration -- ------------------------------ - -- PACKAGE_DECLARATION ::= PACKAGE_SPECIFICATION; + -- PACKAGE_DECLARATION ::= + -- PACKAGE_SPECIFICATION + -- [ASPECT_SPECIFICATIONS]; -- Note: the activation chain entity for a package spec is used for -- all tasks declared in the package spec, or in the package body. @@ -4889,7 +4900,8 @@ package Sinfo is -- TASK_TYPE_DECLARATION ::= -- task type DEFINING_IDENTIFIER [KNOWN_DISCRIMINANT_PART] - -- [is [new INTERFACE_LIST with] TASK_DEFINITION]; + -- [is [new INTERFACE_LIST with] TASK_DEFINITION] + -- [ASPECT_SPECIFICATIONS]; -- N_Task_Type_Declaration -- Sloc points to TASK @@ -4906,7 +4918,8 @@ package Sinfo is -- SINGLE_TASK_DECLARATION ::= -- task DEFINING_IDENTIFIER - -- [is [new INTERFACE_LIST with] TASK_DEFINITION]; + -- [is [new INTERFACE_LIST with] TASK_DEFINITION] + -- [ASPECT_SPECIFICATIONS]; -- N_Single_Task_Declaration -- Sloc points to TASK @@ -4973,7 +4986,8 @@ package Sinfo is -- PROTECTED_TYPE_DECLARATION ::= -- protected type DEFINING_IDENTIFIER [KNOWN_DISCRIMINANT_PART] - -- is [new INTERFACE_LIST with] PROTECTED_DEFINITION; + -- is [new INTERFACE_LIST with] PROTECTED_DEFINITION + -- {ASPECT_SPECIFICATIONS]; -- Note: protected type declarations are not permitted in Ada 83 mode @@ -4992,7 +5006,8 @@ package Sinfo is -- SINGLE_PROTECTED_DECLARATION ::= -- protected DEFINING_IDENTIFIER - -- is [new INTERFACE_LIST with] PROTECTED_DEFINITION; + -- is [new INTERFACE_LIST with] PROTECTED_DEFINITION + -- [ASPECT_SPECIFICATIONS]; -- Note: single protected declarations are not allowed in Ada 83 mode @@ -5733,7 +5748,8 @@ package Sinfo is -- 11.1 Exception Declaration -- --------------------------------- - -- EXCEPTION_DECLARATION ::= DEFINING_IDENTIFIER_LIST : exception; + -- EXCEPTION_DECLARATION ::= DEFINING_IDENTIFIER_LIST : exception + -- [ASPECT_SPECIFICATIONS]; -- For consistency with object declarations etc., the parser converts -- the case of multiple identifiers being declared to a series of @@ -5902,7 +5918,8 @@ package Sinfo is --------------------------------------- -- GENERIC_PACKAGE_DECLARATION ::= - -- GENERIC_FORMAL_PART PACKAGE_SPECIFICATION; + -- GENERIC_FORMAL_PART PACKAGE_SPECIFICATION + -- [ASPECT_SPECIFICATIONS]; -- Note: when we do generics right, the Activation_Chain_Entity entry -- for this node can be removed (since the expander won't see generic @@ -5941,13 +5958,16 @@ package Sinfo is -- GENERIC_INSTANTIATION ::= -- package DEFINING_PROGRAM_UNIT_NAME is - -- new generic_package_NAME [GENERIC_ACTUAL_PART]; + -- new generic_package_NAME [GENERIC_ACTUAL_PART] + -- [ASPECT_SPECIFICATIONS]; -- | [[not] overriding] -- procedure DEFINING_PROGRAM_UNIT_NAME is - -- new generic_procedure_NAME [GENERIC_ACTUAL_PART]; + -- new generic_procedure_NAME [GENERIC_ACTUAL_PART] + -- [ASPECT_SPECIFICATIONS]; -- | [[not] overriding] -- function DEFINING_DESIGNATOR is - -- new generic_function_NAME [GENERIC_ACTUAL_PART]; + -- new generic_function_NAME [GENERIC_ACTUAL_PART] + -- [ASPECT_SPECIFICATIONS]; -- N_Package_Instantiation -- Sloc points to PACKAGE @@ -6031,9 +6051,11 @@ package Sinfo is -- FORMAL_OBJECT_DECLARATION ::= -- DEFINING_IDENTIFIER_LIST : - -- MODE [NULL_EXCLUSION] SUBTYPE_MARK [:= DEFAULT_EXPRESSION]; + -- MODE [NULL_EXCLUSION] SUBTYPE_MARK [:= DEFAULT_EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- | DEFINING_IDENTIFIER_LIST : - -- MODE ACCESS_DEFINITION [:= DEFAULT_EXPRESSION]; + -- MODE ACCESS_DEFINITION [:= DEFAULT_EXPRESSION] + -- [ASPECT_SPECIFICATIONS]; -- Although the syntax allows multiple identifiers in the list, the -- semantics is as though successive declarations were given with @@ -6061,7 +6083,8 @@ package Sinfo is -- FORMAL_TYPE_DECLARATION ::= -- type DEFINING_IDENTIFIER [DISCRIMINANT_PART] - -- is FORMAL_TYPE_DEFINITION; + -- is FORMAL_TYPE_DEFINITION + -- [ASPECT_SPECIFICATIONS]; -- N_Formal_Type_Declaration -- Sloc points to TYPE @@ -6208,7 +6231,8 @@ package Sinfo is -------------------------------------------------- -- FORMAL_CONCRETE_SUBPROGRAM_DECLARATION ::= - -- with SUBPROGRAM_SPECIFICATION [is SUBPROGRAM_DEFAULT]; + -- with SUBPROGRAM_SPECIFICATION [is SUBPROGRAM_DEFAULT] + -- [ASPECT_SPECIFICATIONS]; -- N_Formal_Concrete_Subprogram_Declaration -- Sloc points to WITH @@ -6224,7 +6248,8 @@ package Sinfo is -------------------------------------------------- -- FORMAL_ABSTRACT_SUBPROGRAM_DECLARATION ::= - -- with SUBPROGRAM_SPECIFICATION is abstract [SUBPROGRAM_DEFAULT]; + -- with SUBPROGRAM_SPECIFICATION is abstract [SUBPROGRAM_DEFAULT] + -- [ASPECT_SPECIFICATIONS]; -- N_Formal_Abstract_Subprogram_Declaration -- Sloc points to WITH @@ -6258,7 +6283,8 @@ package Sinfo is -- FORMAL_PACKAGE_DECLARATION ::= -- with package DEFINING_IDENTIFIER - -- is new generic_package_NAME FORMAL_PACKAGE_ACTUAL_PART; + -- is new generic_package_NAME FORMAL_PACKAGE_ACTUAL_PART + -- [ASPECT_SPECIFICATIONS]; -- Note: formal package declarations not allowed in Ada 83 mode @@ -6384,7 +6410,7 @@ package Sinfo is -- entry in the list of aspects. So we use this grammar instead: -- ASPECT_SPECIFICATIONS ::= - -- with ASPECT_SPECIFICATION {, ASPECT_SPECIFICATION}; + -- with ASPECT_SPECIFICATION {, ASPECT_SPECIFICATION} -- ASPECT_SPECIFICATION => -- ASPECT_MARK [=> ASPECT_DEFINITION] |