diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-14 08:46:03 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-14 08:46:03 +0000 |
commit | e4fed0767a1e3115257b38204231d02217d1408d (patch) | |
tree | e043ad5b7ca9b739ced688a5040d0ff234515f08 /gcc/ada/symbols-vms.adb | |
parent | 5039558ddbb9adb612de258b85c399836c7910ea (diff) | |
download | gcc-e4fed0767a1e3115257b38204231d02217d1408d.tar.gz |
2007-08-14 Thomas Quinot <quinot@adacore.com>
* table.adb, g-table.adb, g-dyntab.adb (Append): Reimplement in terms
of Set_Item.
(Set_Item): When the new item is an element of the currently allocated
table passed by reference, save a copy on the stack if we're going
to reallocate. Also, in Table.Set_Item, make sure we test the proper
variable to determine whether to call Set_Last.
* sinput-d.adb, sinput-l.adb, stringt.adb, switch-m.adb,
symbols-vms.adb, symbols-processing-vms-alpha.adb,
symbols-processing-vms-ia64.adb, sem_elab.adb, repinfo.adb: Replace
some occurrences of the pattern
T.Increment_Last;
T.Table (T.Last) := Value;
with a cleaner call to
T.Append (Value);
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127442 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/symbols-vms.adb')
-rw-r--r-- | gcc/ada/symbols-vms.adb | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/gcc/ada/symbols-vms.adb b/gcc/ada/symbols-vms.adb index 7f4e6e64c7b..2b955ca22fb 100644 --- a/gcc/ada/symbols-vms.adb +++ b/gcc/ada/symbols-vms.adb @@ -246,14 +246,12 @@ package body Symbols is if Last > Symbol_Vector'Length + Equal_Data'Length and then Line (Last - Equal_Data'Length + 1 .. Last) = Equal_Data then - Symbol_Table.Increment_Last (Original_Symbols); - Original_Symbols.Table - (Symbol_Table.Last (Original_Symbols)) := - (Name => - new String'(Line (Symbol_Vector'Length + 1 .. - Last - Equal_Data'Length)), - Kind => Data, - Present => True); + Symbol_Table.Append (Original_Symbols, + (Name => + new String'(Line (Symbol_Vector'Length + 1 .. + Last - Equal_Data'Length)), + Kind => Data, + Present => True)); -- SYMBOL_VECTOR=(<symbol>=PROCEDURE) @@ -262,14 +260,12 @@ package body Symbols is Line (Last - Equal_Procedure'Length + 1 .. Last) = Equal_Procedure then - Symbol_Table.Increment_Last (Original_Symbols); - Original_Symbols.Table - (Symbol_Table.Last (Original_Symbols)) := + Symbol_Table.Append (Original_Symbols, (Name => new String'(Line (Symbol_Vector'Length + 1 .. Last - Equal_Procedure'Length)), Kind => Proc, - Present => True); + Present => True)); -- Anything else is incorrectly formatted @@ -536,9 +532,7 @@ package body Symbols is Soft_Minor_ID := False; end if; - Symbol_Table.Increment_Last (Original_Symbols); - Original_Symbols.Table - (Symbol_Table.Last (Original_Symbols)) := S_Data; + Symbol_Table.Append (Original_Symbols, S_Data); Complete_Symbols.Table (Index).Present := False; end if; end loop; |