summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/vhdl/sem_decls.adb3
-rw-r--r--src/vhdl/sem_names.adb6
2 files changed, 7 insertions, 2 deletions
diff --git a/src/vhdl/sem_decls.adb b/src/vhdl/sem_decls.adb
index 1332ff9..a1b39c3 100644
--- a/src/vhdl/sem_decls.adb
+++ b/src/vhdl/sem_decls.adb
@@ -2364,6 +2364,9 @@ package body Sem_Decls is
null;
when Iir_Kind_Terminal_Declaration =>
null;
+ when Iir_Kind_Base_Attribute =>
+ Error_Msg_Sem ("base attribute not allowed in alias", Alias);
+ return;
when others =>
Error_Kind ("sem_non_object_alias_declaration", N_Entity);
end case;
diff --git a/src/vhdl/sem_names.adb b/src/vhdl/sem_names.adb
index 87f9402..ad1b17d 100644
--- a/src/vhdl/sem_names.adb
+++ b/src/vhdl/sem_names.adb
@@ -3692,8 +3692,10 @@ package body Sem_Names is
| Iir_Kind_Implicit_Dereference
| Iir_Kind_Dereference
| Iir_Kind_Attribute_Value
- | Iir_Kind_Function_Call
- | Iir_Kinds_Attribute =>
+ | Iir_Kind_Function_Call =>
+ return True;
+ when Iir_Kinds_Expression_Attribute =>
+ -- All expression attributes are a name.
return True;
when Iir_Kind_Simple_Name
| Iir_Kind_Selected_Name =>