aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-expr.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth/synth-expr.adb')
-rw-r--r--src/synth/synth-expr.adb8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index 22f49daa8..c1fe74d81 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1042,7 +1042,6 @@ package body Synth.Expr is
| Iir_Kind_Variable_Declaration
| Iir_Kind_Interface_Variable_Declaration
| Iir_Kind_Signal_Declaration
- | Iir_Kind_Anonymous_Signal_Declaration
| Iir_Kind_Interface_Constant_Declaration
| Iir_Kind_Constant_Declaration
| Iir_Kind_Iterator_Declaration
@@ -1843,7 +1842,12 @@ package body Synth.Expr is
| Iir_Kind_Signal_Declaration => -- For PSL.
return Synth_Name (Syn_Inst, Expr);
when Iir_Kind_Reference_Name =>
- return Synth_Name (Syn_Inst, Get_Named_Entity (Expr));
+ -- Only used for anonymous signals in internal association.
+ return Synth_Expression_With_Type
+ (Syn_Inst, Get_Named_Entity (Expr), Expr_Type);
+ when Iir_Kind_Anonymous_Signal_Declaration =>
+ return Synth_Expression_With_Type
+ (Syn_Inst, Get_Expression (Expr), Expr_Type);
when Iir_Kind_Indexed_Name
| Iir_Kind_Slice_Name =>
declare