C++: Add value category column to the expr_reuse relation

This commit is contained in:
Jeroen Ketema
2024-03-27 15:44:24 +01:00
parent ba89f1b6b1
commit 9eb51a9b9e
12 changed files with 11406 additions and 2269 deletions

View File

@@ -1340,5 +1340,13 @@ class ReuseExpr extends Expr, @reuseexpr {
/**
* Gets the expression that is being re-used.
*/
Expr getReusedExpr() { expr_reuse(underlyingElement(this), unresolveElement(result)) }
Expr getReusedExpr() { expr_reuse(underlyingElement(this), unresolveElement(result), _) }
override Type getType() { result = this.getReusedExpr().getType() }
override predicate isLValueCategory() { expr_reuse(underlyingElement(this), _, 3) }
override predicate isXValueCategory() { expr_reuse(underlyingElement(this), _, 2) }
override predicate isPRValueCategory() { expr_reuse(underlyingElement(this), _, 1) }
}