Want query to detect mutual assignment
Abierto
question
- Lenguaje dominante
- CodeQL
- Estrellas
- 10.1k
- Forks
- 2.1k
- Merge medio
- 2 d 15 h
- PR fusionados (30 d)
- 141
Descripción
**Description of the issue**
Here is a minimal test case showing mutual assignment where we do `b = a;` followed by `a = b;`:
```
int main(void) {
int a = 0;
int b = a;
int c = 1;
a = b;
return a*b*c;
}
```
The statement `a = b;` is redundant. Unless the variables are marked volatile, there should be no legitimate reason for code to do this. We just found an instance of this in OpenZFS:
https://github.com/openzfs/zfs/pull/14565/files#r1124115812
A quick search revealed that PVS Studio has a check for this:
https://pvs-studio.com/en/docs/warnings/v587/
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.