Java: FP in java/integer-multiplication-cast-to-long when using Long.BYTES
Offen
false-positive
Java
- Vorherrschende Sprache
- CodeQL
- Sterne
- 10.1k
- Forks
- 2.1k
- Ø Merge
- 2 T. 15 Std.
- Gemergte PRs (30 T.)
- 141
Beschreibung
See: https://discuss.lgtm.com/t/java-false-positives/1787/2
Example: https://lgtm.com/projects/g/apache/accumulo/snapshot/dist-1984940991-1551192209962/files/core/src/main/java/org/apache/accumulo/core/file/rfile/bcfile/BCFile.java?sort=name&dir=ASC&mode=heatmap#xc3783b1655fd55ea:1
Final fields that are well-known, and for which we don't have the source code (e.g. `Long.BYTES`) are not considered `ConstantIntegerExpr` in `RangeUtils.qll`, so we incorrectly flag some multiplications as potential overflows.
Beitragsleitfaden
Bewertung
Dieses Issue wurde noch nicht bewertet.