fixes #14444; add genLineDir before assignment (#21201)

* fixes #14444; add `genLineDir` before raises

* add a test case

* fixes differently
This commit is contained in:
ringabout
2022-12-30 00:06:57 +08:00
committed by GitHub
parent e602ebeb66
commit 705da9d452
2 changed files with 15 additions and 0 deletions

View File

@@ -1620,6 +1620,7 @@ proc genAsgn(p: BProc, e: PNode, fastAsgn: bool) =
initLoc(a, locNone, le, OnUnknown)
a.flags.incl(lfEnforceDeref)
a.flags.incl(lfPrepareForMutation)
genLineDir(p, le) # it can be a nkBracketExpr, which may raise
expr(p, le, a)
a.flags.excl(lfPrepareForMutation)
if fastAsgn: incl(a.flags, lfNoDeepCopy)