diff options
author | Tristan Gingold <tgingold@free.fr> | 2019-07-31 06:56:20 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2019-07-31 06:56:20 +0200 |
commit | 3f4fcc9904a2f84505a701e822944c49812dde3a (patch) | |
tree | 2347a05ccb4ba779b2fdad42b4d744e4b6df4728 /src | |
parent | d97fa057d6d0eaf39c826e02dc42dbeb33a1159f (diff) | |
download | ghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.tar.gz ghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.tar.bz2 ghdl-3f4fcc9904a2f84505a701e822944c49812dde3a.zip |
synth: add location on monadic operators.
Diffstat (limited to 'src')
-rw-r--r-- | src/synth/synth-expr.adb | 17 |
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); |