aboutsummaryrefslogtreecommitdiffstats
path: root/parse.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2014-07-17 20:34:57 +0200
committerTristan Gingold <tgingold@free.fr>2014-07-17 20:34:57 +0200
commitcaba1d1b21d9756ede50f40d53fbc816d3b84320 (patch)
treeee0b8459472a8e7aba4ab7465bc46c74be56cd33 /parse.adb
parent1bc00453a725214de4964add2b7f8423d1a5d2da (diff)
downloadghdl-caba1d1b21d9756ede50f40d53fbc816d3b84320.tar.gz
ghdl-caba1d1b21d9756ede50f40d53fbc816d3b84320.tar.bz2
ghdl-caba1d1b21d9756ede50f40d53fbc816d3b84320.zip
vhdl 2008: visibility, more implicit subprograms, alias...
Use Type_Definition in type_declarator.
Diffstat (limited to 'parse.adb')
-rw-r--r--parse.adb9
1 files changed, 4 insertions, 5 deletions
diff --git a/parse.adb b/parse.adb
index e5adb0e8b..d5df876c7 100644
--- a/parse.adb
+++ b/parse.adb
@@ -1670,7 +1670,7 @@ package body Parse is
Decl := Create_Iir (Iir_Kind_Type_Declaration);
Res := Create_Iir (Iir_Kind_Protected_Type_Declaration);
Set_Location (Res, Loc);
- Set_Type (Decl, Res);
+ Set_Type_Definition (Decl, Res);
end if;
Set_Identifier (Decl, Ident);
Set_Location (Decl, Loc);
@@ -1759,7 +1759,7 @@ package body Parse is
Set_Identifier (Decl, Ident);
Set_Location (Decl, Loc);
Def := Parse_Range_Constraint;
- Set_Type (Decl, Def);
+ Set_Type_Definition (Decl, Def);
if Current_Token = Tok_Units then
declare
Unit_Def : Iir;
@@ -1784,7 +1784,7 @@ package body Parse is
Decl := Create_Iir (Iir_Kind_Type_Declaration);
Set_Identifier (Decl, Ident);
Set_Location (Decl, Loc);
- Set_Type (Decl, Parse_Record_Definition);
+ Set_Type_Definition (Decl, Parse_Record_Definition);
if Current_Token = Tok_Identifier then
if Flags.Vhdl_Std = Vhdl_87 then
Error_Msg_Parse ("simple_name not allowed here in vhdl87");
@@ -1829,13 +1829,12 @@ package body Parse is
| Iir_Kind_Array_Type_Definition
| Iir_Kind_File_Type_Definition =>
Decl := Create_Iir (Iir_Kind_Type_Declaration);
- Set_Type (Decl, Def);
when Iir_Kind_Array_Subtype_Definition =>
Decl := Create_Iir (Iir_Kind_Anonymous_Type_Declaration);
- Set_Type (Decl, Def);
when others =>
Error_Kind ("parse_type_declaration", Def);
end case;
+ Set_Type_Definition (Decl, Def);
end if;
Set_Identifier (Decl, Ident);
Set_Location (Decl, Loc);