aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-05-02 18:27:20 +0200
committerTristan Gingold <tgingold@free.fr>2022-05-02 18:27:20 +0200
commit898b6011360af7f006e777ef06868fde93a76622 (patch)
treed98da2ec6abc273faab7b1b370052873e48cde49 /src/vhdl
parent118801b0f49b8e80b2ab036523449955e0be77de (diff)
downloadghdl-898b6011360af7f006e777ef06868fde93a76622.tar.gz
ghdl-898b6011360af7f006e777ef06868fde93a76622.tar.bz2
ghdl-898b6011360af7f006e777ef06868fde93a76622.zip
vhdl-sem_names(sem_selected_by_all_name): avoid a crash
Emit an error message on invalid library declaration prefix. Fix #2048
Diffstat (limited to 'src/vhdl')
-rw-r--r--src/vhdl/vhdl-sem_names.adb4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-sem_names.adb b/src/vhdl/vhdl-sem_names.adb
index 0ce5943cd..ddf431438 100644
--- a/src/vhdl/vhdl-sem_names.adb
+++ b/src/vhdl/vhdl-sem_names.adb
@@ -3272,6 +3272,10 @@ package body Vhdl.Sem_Names is
Spec => Prefix,
Assoc_Chain => Null_Iir);
Sem_As_Selected_By_All_Name (Prefix);
+ when Iir_Kind_Library_Declaration =>
+ Error_Msg_Sem (+Name, "%n cannot be selected by all", +Prefix);
+ Set_Named_Entity (Name, Error_Mark);
+ return;
when Iir_Kind_Error =>
Set_Named_Entity (Name, Error_Mark);
return;