mirror of
https://github.com/github/codeql.git
synced 2026-04-21 06:55:31 +02:00
Java: Add tests for comparison-with-wider-type.
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
| ComparisonWithWiderType.java:4:25:4:29 | ... < ... | Comparison between $@ of type int and $@ of wider type long. | ComparisonWithWiderType.java:4:25:4:25 | i | expression | ComparisonWithWiderType.java:4:29:4:29 | l | expression |
|
||||
| ComparisonWithWiderType.java:16:26:16:30 | ... > ... | Comparison between $@ of type byte and $@ of wider type short. | ComparisonWithWiderType.java:16:30:16:30 | b | expression | ComparisonWithWiderType.java:16:26:16:26 | c | expression |
|
||||
@@ -0,0 +1,27 @@
|
||||
public class ComparisonWithWiderType {
|
||||
public void testLt(long l) {
|
||||
// BAD: loop variable is an int, but the upper bound is a long
|
||||
for (int i = 0; i < l; i++) {
|
||||
System.out.println(i);
|
||||
}
|
||||
|
||||
// GOOD: loop variable is a long
|
||||
for (long i = 0; i < l; i++) {
|
||||
System.out.println(i);
|
||||
}
|
||||
}
|
||||
|
||||
public void testGt(short c) {
|
||||
// BAD: loop variable is a byte, but the upper bound is a short
|
||||
for (byte b = 0; c > b; b++) {
|
||||
System.out.println(b);
|
||||
}
|
||||
}
|
||||
|
||||
public void testLe(int i) {
|
||||
// GOOD: loop variable is a long, and the upper bound is an int
|
||||
for (long l = 0; l <= i; l++) {
|
||||
System.out.println(l);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
Security/CWE/CWE-190/ComparisonWithWiderType.ql
|
||||
Reference in New Issue
Block a user