aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/translate/trans-rtis.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2018-01-18 20:42:56 +0100
committerTristan Gingold <tgingold@free.fr>2018-01-20 07:40:52 +0100
commitab7f46db88ef03564436f1bf96339c9ed3452787 (patch)
treede4e599f2fb655aabdad3ed1bcd84c6d5ef6b520 /src/vhdl/translate/trans-rtis.adb
parenta883fc4125afc3e874dfa1e4a5817c01219e0db9 (diff)
downloadghdl-ab7f46db88ef03564436f1bf96339c9ed3452787.tar.gz
ghdl-ab7f46db88ef03564436f1bf96339c9ed3452787.tar.bz2
ghdl-ab7f46db88ef03564436f1bf96339c9ed3452787.zip
translate: remove other use of Nam_Buffer.
Diffstat (limited to 'src/vhdl/translate/trans-rtis.adb')
-rw-r--r--src/vhdl/translate/trans-rtis.adb20
1 files changed, 7 insertions, 13 deletions
diff --git a/src/vhdl/translate/trans-rtis.adb b/src/vhdl/translate/trans-rtis.adb
index 3258ce085..268c4fb9d 100644
--- a/src/vhdl/translate/trans-rtis.adb
+++ b/src/vhdl/translate/trans-rtis.adb
@@ -986,19 +986,15 @@ package body Trans.Rtis is
function Generate_Name (Node : Iir) return O_Dnode
is
use Name_Table;
- Id : Name_Id;
+ Node_Id : constant Name_Id := Get_Identifier (Node);
+ Id : O_Ident;
begin
- Id := Get_Identifier (Node);
- if Is_Character (Id) then
- Nam_Buffer (1) := ''';
- Nam_Buffer (2) := Get_Character (Id);
- Nam_Buffer (3) := ''';
- Nam_Length := 3;
+ Id := Create_Identifier ("RTISTR");
+ if Is_Character (Node_Id) then
+ return Create_String (''' & Get_Character (Node_Id) & ''', Id);
else
- Image (Id);
+ return Create_String (Image (Node_Id), Id);
end if;
- return Create_String (Nam_Buffer (1 .. Nam_Length),
- Create_Identifier ("RTISTR"));
end Generate_Name;
function Get_Null_Loc return O_Cnode is
@@ -2823,10 +2819,8 @@ package body Trans.Rtis is
Storage, Ghdl_Rtin_Type_Scalar);
if Public then
- Image (Id);
Name := Create_String
- (Nam_Buffer (1 .. Nam_Length),
- Create_Identifier_Without_Prefix (Id, "__RTISTR"));
+ (Image (Id), Create_Identifier_Without_Prefix (Id, "__RTISTR"));
Start_Init_Value (Info.Library_Rti_Const);
Start_Record_Aggr (Aggr, Ghdl_Rtin_Type_Scalar);
New_Record_Aggr_El (Aggr, Generate_Common (Ghdl_Rtik_Library));