aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-07-31 06:56:20 +0200
committerTristan Gingold <tgingold@free.fr>2019-07-31 06:56:20 +0200
commit3f4fcc9904a2f84505a701e822944c49812dde3a (patch)
tree2347a05ccb4ba779b2fdad42b4d744e4b6df4728
parentd97fa057d6d0eaf39c826e02dc42dbeb33a1159f (diff)
downloadghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.tar.gz
ghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.tar.bz2
ghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.zip
synth: add location on monadic operators.
-rw-r--r--src/synth/synth-expr.adb17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index 943608aaf..67121652f 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1070,20 +1070,23 @@ package body Synth.Expr is
is
Operand : Value_Acc;
- function Synth_Bit_Monadic (Id : Monadic_Module_Id) return Value_Acc is
+ function Synth_Bit_Monadic (Id : Monadic_Module_Id) return Value_Acc
+ is
+ N : Net;
begin
- return Create_Value_Net
- (Build_Monadic (Build_Context, Id, Get_Net (Operand)),
- Operand.Typ);
+ N := Build_Monadic (Build_Context, Id, Get_Net (Operand));
+ Set_Location (N, Loc);
+ return Create_Value_Net (N, Operand.Typ);
end Synth_Bit_Monadic;
function Synth_Vec_Monadic (Id : Monadic_Module_Id) return Value_Acc
is
Op: constant Net := Get_Net (Operand);
+ N : Net;
begin
- return Create_Value_Net
- (Build_Monadic (Build_Context, Id, Op),
- Create_Res_Bound (Operand, Op));
+ N := Build_Monadic (Build_Context, Id, Op);
+ Set_Location (N, Loc);
+ return Create_Value_Net (N, Create_Res_Bound (Operand, Op));
end Synth_Vec_Monadic;
begin
Operand := Synth_Expression (Syn_Inst, Operand_Expr);