diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-04-06 09:27:42 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-04-06 09:27:42 +0000 |
commit | 41ee875ca042606c60974bfc41225388785c6409 (patch) | |
tree | 09de6cbedd12384c33d75cfc489f9993e719764d /gcc/ada/sprint.adb | |
parent | b3c77df2cbe4abe8eed06dad6f0579d99724feb5 (diff) | |
download | gcc-41ee875ca042606c60974bfc41225388785c6409.tar.gz |
2007-04-06 Ed Schonberg <schonberg@adacore.com>
Robert Dewar <dewar@adacore.com>
* sinfo.ads, sinfo.adb (Coextensions): New element list for allocators,
to chain nested components that are allocators for access discriminants
of the enclosing object.
Add N_Push and N_Pop nodes
New field Exception_Label added
(Local_Raise_Statements): New field in N_Exception_Handler_Node
(Local_Raise_Not_OK): New flag in N_Exception_Handler_Node
(Is_Coextension): New flag for allocators, to mark allocators that
correspond to access discriminants of dynamically allocated objects.
(N_Block_Statement): Document the fact that the corresponding entity
can be an E_Return_Statement.
(Is_Coextension): New flag for allocators.
Remove all code for DSP option
* sprint.ads, sprint.adb: Display basic information for class_wide
subtypes. Add handling of N_Push and N_Pop nodes
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123600 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sprint.adb')
-rw-r--r-- | gcc/ada/sprint.adb | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/gcc/ada/sprint.adb b/gcc/ada/sprint.adb index 2343aec98cc..51131e3a67f 100644 --- a/gcc/ada/sprint.adb +++ b/gcc/ada/sprint.adb @@ -2218,6 +2218,42 @@ package body Sprint is Write_Str (", "); end if; + when N_Pop_Constraint_Error_Label => + Write_Indent_Str ("%pop_constraint_error_label"); + + when N_Pop_Program_Error_Label => + Write_Indent_Str ("%pop_program_error_label"); + + when N_Pop_Storage_Error_Label => + Write_Indent_Str ("%pop_storage_error_label"); + + when N_Push_Constraint_Error_Label => + Write_Indent_Str ("%push_constraint_error_label ("); + + if Present (Exception_Label (Node)) then + Write_Name_With_Col_Check (Chars (Exception_Label (Node))); + end if; + + Write_Str (")"); + + when N_Push_Program_Error_Label => + Write_Indent_Str ("%push_program_error_label ("); + + if Present (Exception_Label (Node)) then + Write_Name_With_Col_Check (Chars (Exception_Label (Node))); + end if; + + Write_Str (")"); + + when N_Push_Storage_Error_Label => + Write_Indent_Str ("%push_storage_error_label ("); + + if Present (Exception_Label (Node)) then + Write_Name_With_Col_Check (Chars (Exception_Label (Node))); + end if; + + Write_Str (")"); + when N_Pragma => Write_Indent_Str_Sloc ("pragma "); Write_Name_With_Col_Check (Chars (Node)); @@ -3698,7 +3734,8 @@ package body Sprint is -- Class-Wide types - when E_Class_Wide_Type => + when E_Class_Wide_Type | + E_Class_Wide_Subtype => Write_Header; Write_Name_With_Col_Check (Chars (Etype (Typ))); Write_Str ("'Class"); |