ArrayValues fails when joining two arrays that have the same value at the same position in the array

Issue #49 resolved
Frederik Buss-Joraschek created an issue

Using l1.ArrayValues

Analyzing

    public static void demonstratesArrayValuesFailure() throws Exception {
        int aUnchangedValue = 1;
        for (int i = 0; i < 1; i++) {
            int[] arr = new int[] { aUnchangedValue };
            if ("".isEmpty()) { // Enforce a branch
                ;
            }
        }
    }

leads to

Caused by: java.lang.AssertionError: assertion failed: join is only defined for objects that are different
    at org.opalj.ai.package$.assert(package.scala:87)
    at org.opalj.ai.ValuesDomain$Value$class.join(ValuesDomain.scala:212)
    at org.opalj.ai.domain.l1.IntegerRangeValues$IntegerRange.join(IntegerRangeValues.scala:146)
    at org.opalj.ai.domain.l1.ArrayValues$ArrayValue$$anonfun$1.apply(ArrayValues.scala:158)
    at org.opalj.ai.domain.l1.ArrayValues$ArrayValue$$anonfun$1.apply(ArrayValues.scala:156)
    ...

Comments (4)

  1. Log in to comment