diff options
author | Robert Dewar <dewar@adacore.com> | 2010-10-22 13:58:49 +0000 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-10-22 15:58:49 +0200 |
commit | 86200f6646bd6f79ce534253da034238ebbf5e10 (patch) | |
tree | 0f29daae91540971a73fc67b6f90224da6b55447 /gcc/ada/sem_case.ads | |
parent | 497b37aded1f085d996b5bd67ec4c62b26810912 (diff) | |
download | gcc-86200f6646bd6f79ce534253da034238ebbf5e10.zip gcc-86200f6646bd6f79ce534253da034238ebbf5e10.tar.gz gcc-86200f6646bd6f79ce534253da034238ebbf5e10.tar.bz2 |
a-except-2005.adb (Rmsg_18): New message text.
2010-10-22 Robert Dewar <dewar@adacore.com>
* a-except-2005.adb (Rmsg_18): New message text.
* a-except.adb (Rmsg_18): New message text.
* atree.adb (List25): New function
(Set_List25): New procedure
* atree.ads (List25): New function
(Set_List25): New procedure
* einfo.adb (Static_Predicate): Is now a list
(OK_To_Reference): Present in all entities
* einfo.ads (Static_Predicate): Is now a list
(OK_To_Reference): Applies to all entities
* exp_ch13.adb (Build_Predicate_Function): Moved to Sem_Ch13
* sem_attr.adb (Bad_Attribute_For_Predicate): Call
Bad_Predicated_Subtype_Use.
* sem_case.ads, sem_case.adb: Major surgery to deal with predicated
subtype case.
* sem_ch13.adb (Build_Predicate_Function): Moved from Exp_Ch13 to
Sem_Ch13.
(Build_Static_Predicate): New procedure handles static predicates.
* sem_ch3.adb (Analyze_Subtype_Declaration): Delay freeze on subtype
with no constraint if ancestor subtype has predicates.
(Analyze_Variant_Part): New calling sequence for Analyze_Choices
* sem_ch4.adb (Junk_Operand): Don't complain about OK_To_Reference
entity.
(Analyze_Case_Expression): New calling sequence for Analyze_Choices
* sem_ch5.adb (Analyze_Case_Statement): New calling sequence for
Analyze_Choices.
* sem_util.ads, sem_util.adb (Bad_Predicated_Subtype_Use): New procedure
* types.ads (PE_Bad_Predicated_Generic_Type): Replaces
PE_Bad_Attribute_For_Predicate.
* atree.h: Add definition of List25.
From-SVN: r165828
Diffstat (limited to 'gcc/ada/sem_case.ads')
-rw-r--r-- | gcc/ada/sem_case.ads | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/gcc/ada/sem_case.ads b/gcc/ada/sem_case.ads index 78ae7c6..ccee41f 100644 --- a/gcc/ada/sem_case.ads +++ b/gcc/ada/sem_case.ads @@ -34,16 +34,6 @@ with Types; use Types; package Sem_Case is - type Choice_Bounds is record - Lo : Node_Id; - Hi : Node_Id; - Node : Node_Id; - end record; - - type Choice_Table_Type is array (Pos range <>) of Choice_Bounds; - -- Table type used to sort the choices present in a case statement, - -- array aggregate or record variant. - procedure No_OP (C : Node_Id); -- The no-operation routine. Does absolutely nothing. Can be used -- in the following generic for the parameter Process_Empty_Choice. @@ -75,16 +65,9 @@ package Sem_Case is package Generic_Choices_Processing is - function Number_Of_Choices (N : Node_Id) return Nat; - -- Iterates through the choices of N, (N can be a case expression, case - -- statement, array aggregate or record variant), counting all the - -- Choice nodes except for the Others choice. - procedure Analyze_Choices (N : Node_Id; Subtyp : Entity_Id; - Choice_Table : out Choice_Table_Type; - Last_Choice : out Nat; Raises_CE : out Boolean; Others_Present : out Boolean); -- From a case expression, case statement, array aggregate or record @@ -92,23 +75,6 @@ package Sem_Case is -- choices. Subtyp is the subtype of the discrete choices. The type -- against which the discrete choices must be resolved is its base type. -- - -- On entry Choice_Table must be big enough to contain all the discrete - -- choices encountered. The lower bound of Choice_Table must be one. - -- - -- On exit Choice_Table contains all the static and non empty discrete - -- choices in sorted order. Last_Choice gives the position of the last - -- valid choice in Choice_Table, Choice_Table'First contains the first. - -- We can have Last_Choice < Choice_Table'Last for one (or several) of - -- the following reasons: - -- - -- (a) The list of choices contained a non static choice - -- - -- (b) The list of choices contained an empty choice - -- (something like "1 .. 0 => ") - -- - -- (c) One of the bounds of a discrete choice contains an - -- error or raises constraint error. - -- -- In one of the bounds of a discrete choice raises a constraint -- error the flag Raise_CE is set. -- |