Java: `Assignment` does not include `UnaryAssignExpr`
- Langage dominant
- CodeQL
- Étoiles
- 10.1k
- Forks
- 2.1k
- Merge moyen
- 2 j 15 h
- PR mergées (30 j)
- 141
Description
**Description of the issue**
`Assignment` [describes itself](https://codeql.github.com/codeql-standard-libraries/java/semmle/code/java/Expr.qll/type.Expr$Assignment.html) as:
> A common super-class that represents all varieties of assignments.
However, it does not actually include `UnaryAssignExpr`; for example the following cannot be compiled:
```ql
import java
from Assignment a
// Error: test is always false, as UnaryAssignExpr is incompatible with the expression type Assignment.
where a instanceof UnaryAssignExpr
select a
```
In case that is the intended behavior it would be good to clarify this in the `Assignment` documentation.
If not, then `Assignment` should probably include `UnaryAssignExpr` as well. `Assignment.getRhs()` cannot have a result in this case, so its documentation would have to be adjusted to describe this behavior.
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.