Skip to content

Commit aa2abf7

Browse files
committed
Make ReturnNodes disjoint (normal, yield, async)
1 parent 732ef92 commit aa2abf7

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

csharp/ql/src/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1354,14 +1354,12 @@ abstract class ReturnNode extends Node {
13541354
private module ReturnNodes {
13551355
/**
13561356
* A data-flow node that represents an expression returned by a callable,
1357-
* either using a (`yield`) `return` statement or an expression body (`=>`).
1357+
* either using a `return` statement or an expression body (`=>`).
13581358
*/
13591359
class ExprReturnNode extends ReturnNode, ExprNode {
13601360
ExprReturnNode() {
13611361
exists(DotNet::Callable c, DotNet::Expr e | e = this.getExpr() |
1362-
c.canReturn(e)
1363-
or
1364-
c.(Callable).canYieldReturn(e)
1362+
c.canReturn(e) and not c.(Modifiable).isAsync()
13651363
)
13661364
}
13671365

0 commit comments

Comments
 (0)