diff options
| author | Tristan Gingold <tgingold@free.fr> | 2022-08-11 17:30:07 +0200 | 
|---|---|---|
| committer | Tristan Gingold <tgingold@free.fr> | 2022-08-11 17:30:07 +0200 | 
| commit | 81b6ec49613945b88c06fc49f30bf2388653bb58 (patch) | |
| tree | 3ebe8a2c8a1138940bfc5842adddc893f689b13b /src | |
| parent | d4d4d0706e4c70a64ed196447d3e7ed837bfc5b0 (diff) | |
| download | ghdl-81b6ec49613945b88c06fc49f30bf2388653bb58.tar.gz ghdl-81b6ec49613945b88c06fc49f30bf2388653bb58.tar.bz2 ghdl-81b6ec49613945b88c06fc49f30bf2388653bb58.zip | |
vhdl-sem_stmts.adb: handle signal assignment to external names.  Fix #2172
Diffstat (limited to 'src')
| -rw-r--r-- | src/vhdl/vhdl-sem_stmts.adb | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/src/vhdl/vhdl-sem_stmts.adb b/src/vhdl/vhdl-sem_stmts.adb index 06a59074d..4f0b24de0 100644 --- a/src/vhdl/vhdl-sem_stmts.adb +++ b/src/vhdl/vhdl-sem_stmts.adb @@ -356,6 +356,8 @@ package body Vhdl.Sem_Stmts is           when Iir_Kind_Signal_Declaration =>              Sem_Add_Driver (Target_Object, Stmt);              Set_Use_Flag (Target_Prefix, True); +         when Iir_Kind_External_Signal_Name => +            Sem_Add_Driver (Target_Object, Stmt);           when Iir_Kind_Guard_Signal_Declaration =>              Error_Msg_Sem (+Stmt, "implicit GUARD signal cannot be assigned");              return; @@ -380,6 +382,8 @@ package body Vhdl.Sem_Stmts is          and then Is_Parameter (Target_Prefix)        then           Guarded_Target := Unknown; +      elsif Targ_Obj_Kind = Iir_Kind_External_Signal_Name then +         Guarded_Target := Unknown;        else           if Get_Guarded_Signal_Flag (Target_Prefix) then              Guarded_Target := True; | 
