ITADN

False Positive: INFINITE_EXECUTION_TIME incorrectly reported for simple terminating while-loop

#2000Openleemeii 创建于 2026-02-08
L
leemeiicommented
**Description** Infer incorrectly reports an "Infinite Execution Time" error for a simple while-loop that clearly terminates after a single iteration. ```java // Case 1 public class TestInferBug1 { public static void main(String[] args) { int i = 0; while (i != 3) {// <- should not report(False Positive) i += 3; } } } // Case 2 public class TestInferBug2 { public static void main(String[] args) { int i = 0; while (i != 1) { i += 1; // True Negative } } } ``` **Expected behavior:** Case 1: Should NOT report INFINITE_EXECUTION_TIME because: i starts at 0 First iteration: i != 3 is true, i becomes 3 Second iteration: i != 3 is false, loop terminates Total: Exactly 1 iteration, not infinite Case 2: Should correctly not report INFINITE_EXECUTION_TIME (current correct behavior) **Actual behavior:** Case 1: INFINITE_EXECUTION_TIME error is incorrectly reported (False Positive) Case 2: No issue reported (Correct behavior)
0 条评论