aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/vhdl/parse.adb15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/vhdl/parse.adb b/src/vhdl/parse.adb
index 13c9d1f29..492fd0395 100644
--- a/src/vhdl/parse.adb
+++ b/src/vhdl/parse.adb
@@ -3634,21 +3634,24 @@ package body Parse is
Set_Location (Res);
case Current_Token is
- when Tok_Identifier =>
- Ident := Current_Identifier;
- when Tok_Character =>
+ when Tok_Identifier
+ | Tok_Character =>
Ident := Current_Identifier;
+
+ -- Skip identifier/character.
+ Scan;
when Tok_String =>
Ident := Scan_To_Operator_Name (Get_Token_Location);
+
+ -- Skip operator.
+ Scan;
-- FIXME: vhdl87
-- FIXME: operator symbol.
when others =>
Error_Msg_Parse ("alias designator expected");
+ Ident := Null_Identifier;
end case;
-
- -- Skip identifier.
Set_Identifier (Res, Ident);
- Scan;
if Current_Token = Tok_Colon then
-- Skip ':'.