fix cfg and dataflow for logical compound assignments

This commit is contained in:
Erik Krogh Kristensen
2021-08-10 12:17:59 +02:00
parent d658ef1dcd
commit 01a202fa10
4 changed files with 33 additions and 6 deletions

View File

@@ -1495,6 +1495,16 @@ module DataFlow {
predExpr = succExpr.(NonNullAssertion).getExpression()
or
predExpr = succExpr.(ExpressionWithTypeArguments).getExpression()
or
(
succExpr instanceof AssignLogOrExpr or
succExpr instanceof AssignLogAndExpr or
succExpr instanceof AssignNullishCoalescingExpr
) and
(
predExpr = succExpr.(CompoundAssignExpr).getLhs() or
predExpr = succExpr.(CompoundAssignExpr).getRhs()
)
)
or
// flow from 'this' parameter into 'this' expressions