aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/synth/synth-vhdl_expr.adb7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/synth/synth-vhdl_expr.adb b/src/synth/synth-vhdl_expr.adb
index 0d8899465..ee691d8f5 100644
--- a/src/synth/synth-vhdl_expr.adb
+++ b/src/synth/synth-vhdl_expr.adb
@@ -2171,6 +2171,13 @@ package body Synth.Vhdl_Expr is
Res : Valtyp;
begin
Res := Synth_Name (Syn_Inst, Expr);
+ if Res.Val /= null
+ and then Res.Val.Kind = Value_Signal
+ then
+ Error_Msg_Synth
+ (+Expr, "cannot use signal value during elaboration");
+ return No_Valtyp;
+ end if;
if Res.Typ /= null
and then Res.Typ.W = 0 and then Res.Val.Kind /= Value_Memory
then