From a03907b584362b4b6a935781c0bd79fb63c21696 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Fri, 6 Mar 2020 20:35:07 +0100 Subject: vhdl-sem_stmts: improve error message for signal assignment. --- src/vhdl/vhdl-sem_stmts.adb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src') diff --git a/src/vhdl/vhdl-sem_stmts.adb b/src/vhdl/vhdl-sem_stmts.adb index 29845a471..691c532cf 100644 --- a/src/vhdl/vhdl-sem_stmts.adb +++ b/src/vhdl/vhdl-sem_stmts.adb @@ -318,6 +318,15 @@ package body Vhdl.Sem_Stmts is begin Target_Object := Name_To_Object (Target); if Target_Object = Null_Iir then + if Get_Kind (Target) = Iir_Kind_Simple_Name + and then Is_Error (Get_Named_Entity (Target)) + then + -- Common case: target is not declared. There was already + -- an error message for it. + return; + end if; + + -- Uncommon case: target is not an object (could be a component). Error_Msg_Sem (+Target, "target is not a signal name"); return; end if; -- cgit v1.2.3