-
assigned issue to
IntegerRange violates assertion when establishing a constraint
Issue #48
resolved
Using org.opalj.ai.domain.l1.DefaultIntegerValuesDomain
Analyzing
public static void demonstratesIntFailure(int size) throws Exception {
for (int i = 0; i < size; i++) {
;
}
for (int i = 0; i < size; i++) {
;
}
}
leads to a violated assertion: assert(lowerBound <= upperBound)
Stacktrace:
23[line=11]:IF_ICMPLT(true=18↑, false=↓) [
operands:
IntegerRange(lb=-2147483648, ub=0) [#87aac27]
IntegerRange(lb=0, ub=0) [#3e3abc88]
;
locals:
0:IntegerRange(lb=-2147483648, ub=0) [#87aac27]
1:IntegerRange(lb=0, ub=0) [#3e3abc88]
]
Exception in thread "main" org.opalj.ai.InterpretationFailedException$$anon$1: the interpretation failed
at org.opalj.ai.InterpretationFailedException$.apply(InterpretationFailedException.scala:69)
at org.opalj.ai.AI$class.continueInterpretation(AI.scala:2033)
at org.opalj.ai.InterpretMethod$AI$.continueInterpretation(InterpretMethod.scala:49)
at org.opalj.ai.AI$class.performInterpretation(AI.scala:292)
at org.opalj.ai.InterpretMethod$AI$.performInterpretation(InterpretMethod.scala:49)
at org.opalj.ai.AI$class.perform(AI.scala:267)
at org.opalj.ai.InterpretMethod$AI$.perform(InterpretMethod.scala:49)
at org.opalj.ai.AI$class.apply(AI.scala:137)
at org.opalj.ai.InterpretMethod$AI$.apply(InterpretMethod.scala:49)
at org.opalj.ai.InterpretMethod$.main(InterpretMethod.scala:184)
at org.opalj.ai.InterpretMethod.main(InterpretMethod.scala)
Caused by: java.lang.AssertionError: assertion failed
at org.opalj.ai.package$.assert(package.scala:80)
at org.opalj.ai.domain.l1.DefaultIntegerRangeValues$IntegerRange.<init>(DefaultIntegerRangeValues.scala:85)
at org.opalj.ai.domain.l1.DefaultIntegerRangeValues$class.IntegerRange(DefaultIntegerRangeValues.scala:161)
at org.opalj.ai.domain.l1.DefaultConfigurableIntegerRangeValuesDomain.IntegerRange(DefaultIntegerRangeValuesDomain.scala:42)
at org.opalj.ai.domain.l1.DefaultConfigurableIntegerRangeValuesDomain.IntegerRange(DefaultIntegerRangeValuesDomain.scala:42)
at org.opalj.ai.domain.l1.IntegerRangeValues$class.intEstablishIsLessThan(IntegerRangeValues.scala:450)
at org.opalj.ai.domain.l1.DefaultConfigurableIntegerRangeValuesDomain.org$opalj$ai$domain$l1$ConstraintsBetweenIntegerValues$$super$intEstablishIsLessThan(DefaultIntegerRangeValuesDomain.scala:42)
at org.opalj.ai.domain.l1.ConstraintsBetweenIntegerValues$class.intEstablishIsLessThan(ConstraintsBetweenIntegerValues.scala:393)
at org.opalj.ai.domain.l1.DefaultConfigurableIntegerRangeValuesDomain.intEstablishIsLessThan(DefaultIntegerRangeValuesDomain.scala:42)
at org.opalj.ai.IntegerValuesDomain$$anonfun$IntIsLessThan$1.apply(IntegerValuesDomain.scala:278)
at org.opalj.ai.IntegerValuesDomain$$anonfun$IntIsLessThan$1.apply(IntegerValuesDomain.scala:278)
at org.opalj.ai.AI$class.ifTcmpXX$1(AI.scala:756)
at org.opalj.ai.AI$class.continueInterpretation(AI.scala:1083)
... 9 more
Comments (4)
-
repo owner -
repo owner - changed status to resolved
fixes issue
#48→ <<cset 21daf25eb421>>
-
repo owner - removed milestone
Removing milestone: 0.8.0-M3 (automated comment)
-
repo owner - removed version
Removing version: 0.8.0 (automated comment)
- Log in to comment