Skip to content

Java frontend: support lambda autoboxing involving generics #5363

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Boolean.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testBoolean --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testBoolean:\(\)V\.assertion\.1\] line 73 assertion at file BoxingLambda\.java line 73 function java::BoxingLambda\.testBoolean:\(\)V bytecode-index 25: SUCCESS
\[java::BoxingLambda\.testBoolean:\(\)V\.assertion\.2\] line 74 assertion at file BoxingLambda\.java line 74 function java::BoxingLambda\.testBoolean:\(\)V bytecode-index 35: SUCCESS
\[java::BoxingLambda\.testBoolean:\(\)V\.assertion\.3\] line 75 assertion at file BoxingLambda\.java line 75 function java::BoxingLambda\.testBoolean:\(\)V bytecode-index 47: SUCCESS
\[java::BoxingLambda\.testBoolean:\(\)V\.assertion\.4\] line 76 assertion at file BoxingLambda\.java line 76 function java::BoxingLambda\.testBoolean:\(\)V bytecode-index 53: FAILURE
^EXIT=10$
^SIGNAL=0$
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
171 changes: 171 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/BoxingLambda.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
public class BoxingLambda {

interface TakesBoxedBoolean {
public Boolean accept(Boolean b);
}

interface TakesUnboxedBoolean {
public boolean accept(boolean b);
}

interface TakesBoxedByte {
public Byte accept(Byte b);
}

interface TakesUnboxedByte {
public byte accept(byte b);
}

interface TakesBoxedCharacter {
public Character accept(Character c);
}

interface TakesUnboxedCharacter {
public char accept(char c);
}

interface TakesBoxedDouble {
public Double accept(Double d);
}

interface TakesUnboxedDouble {
public double accept(double d);
}

interface TakesBoxedFloat {
public Float accept(Float f);
}

interface TakesUnboxedFloat {
public float accept(float f);
}

interface TakesBoxedInteger {
public Integer accept(Integer i);
}

interface TakesUnboxedInteger {
public int accept(int i);
}

interface TakesBoxedLong {
public Long accept(Long l);
}

interface TakesUnboxedLong {
public long accept(long l);
}

interface TakesBoxedShort {
public Short accept(Short s);
}

interface TakesUnboxedShort {
public short accept(short s);
}

public static void testBoolean() {

TakesBoxedBoolean takesBoxed = b -> !b;
TakesUnboxedBoolean takesUnboxed = takesBoxed::accept;
TakesBoxedBoolean takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept(true) == false;
assert takesUnboxed.accept(true) == false;
assert takesBoxedAgain.accept(true) == false;
assert false;

}

public static void testByte() {

TakesBoxedByte takesBoxed = b -> (byte)(b + 1);
TakesUnboxedByte takesUnboxed = takesBoxed::accept;
TakesBoxedByte takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept((byte)1) == 2;
assert takesUnboxed.accept((byte)1) == 2;
assert takesBoxedAgain.accept((byte)1) == 2;
assert false;

}

public static void testCharacter() {

TakesBoxedCharacter takesBoxed = c -> c == 'a' ? 'b' : 'a';
TakesUnboxedCharacter takesUnboxed = takesBoxed::accept;
TakesBoxedCharacter takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept('a') == 'b';
assert takesUnboxed.accept('a') == 'b';
assert takesBoxedAgain.accept('a') == 'b';
assert false;

}

public static void testDouble() {

TakesBoxedDouble takesBoxed = d -> d + 1;
TakesUnboxedDouble takesUnboxed = takesBoxed::accept;
TakesBoxedDouble takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept(1.0) == 2.0;
assert takesUnboxed.accept(1.0) == 2.0;
assert takesBoxedAgain.accept(1.0) == 2.0;
assert false;

}

public static void testFloat() {

TakesBoxedFloat takesBoxed = f -> f + 1;
TakesUnboxedFloat takesUnboxed = takesBoxed::accept;
TakesBoxedFloat takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept(1.0f) == 2.0f;
assert takesUnboxed.accept(1.0f) == 2.0f;
assert takesBoxedAgain.accept(1.0f) == 2.0f;
assert false;

}

public static void testInteger() {

TakesBoxedInteger takesBoxed = i -> i + 1;
TakesUnboxedInteger takesUnboxed = takesBoxed::accept;
TakesBoxedInteger takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept(1) == 2;
assert takesUnboxed.accept(1) == 2;
assert takesBoxedAgain.accept(1) == 2;
assert false;

}

public static void testLong() {

TakesBoxedLong takesBoxed = l -> l + 1;
TakesUnboxedLong takesUnboxed = takesBoxed::accept;
TakesBoxedLong takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept(1L) == 2L;
assert takesUnboxed.accept(1L) == 2L;
assert takesBoxedAgain.accept(1L) == 2L;
assert false;

}

public static void testShort() {

TakesBoxedShort takesBoxed = s -> (short)(s + 1);
TakesUnboxedShort takesUnboxed = takesBoxed::accept;
TakesBoxedShort takesBoxedAgain = takesUnboxed::accept;

assert takesBoxed.accept((short)1) == 2;
assert takesUnboxed.accept((short)1) == 2;
assert takesBoxedAgain.accept((short)1) == 2;
assert false;

}

}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
33 changes: 33 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/BoxingWithOtherConversions.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
public class BoxingWithOtherConversions {

interface ObjectToObject {
Object accept(Object o);
}

interface IntToObject {
Object accept(int i);
}

// Check we can narrow a parameter type down to a primitive
// which should be boxed and then upcast to Object by the
// generated lambda:
public static void testNarrowParameterTypeToPrimitive() {
ObjectToObject o2o = i -> ((Integer)i) + 1;
IntToObject i2o = o2o::accept;
assert o2o.accept(1).equals(2);
assert i2o.accept(1).equals(2);
assert false;
}

interface ObjectToInt {
int accept(Object o);
}

public static void testBroadenReturnTypeToObject() {
ObjectToInt o2i = o -> ((Integer)o).intValue() + 1;
ObjectToObject o2o = o2i::accept;
assert o2o.accept(1).equals(2);
assert o2i.accept(1) == 2;
assert false;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
CORE
BoxingWithOtherConversions
--function BoxingWithOtherConversions.testBroadenReturnTypeToObject --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
^EXIT=10$
^SIGNAL=0$
\[java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V.assertion\.1\] line 29 assertion at file BoxingWithOtherConversions\.java line 29 function java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V bytecode-index 21: SUCCESS
\[java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V.assertion\.2\] line 30 assertion at file BoxingWithOtherConversions\.java line 30 function java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V bytecode-index 33: SUCCESS
\[java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V.assertion\.3\] line 31 assertion at file BoxingWithOtherConversions\.java line 31 function java::BoxingWithOtherConversions\.testBroadenReturnTypeToObject:\(\)V bytecode-index 39: FAILURE
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Byte.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testByte --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testByte:\(\)V\.assertion\.1\] line 86 assertion at file BoxingLambda\.java line 86 function java::BoxingLambda\.testByte:\(\)V bytecode-index 26: SUCCESS
\[java::BoxingLambda\.testByte:\(\)V\.assertion\.2\] line 87 assertion at file BoxingLambda\.java line 87 function java::BoxingLambda\.testByte:\(\)V bytecode-index 37: SUCCESS
\[java::BoxingLambda\.testByte:\(\)V\.assertion\.3\] line 88 assertion at file BoxingLambda\.java line 88 function java::BoxingLambda\.testByte:\(\)V bytecode-index 50: SUCCESS
\[java::BoxingLambda\.testByte:\(\)V\.assertion\.4\] line 89 assertion at file BoxingLambda\.java line 89 function java::BoxingLambda\.testByte:\(\)V bytecode-index 56: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/ByteToLong.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testByteToLong --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testByteToLong:\(\)V\.assertion\.1\] line 26 assertion at file PrimitiveWideningWithBoxing\.java line 26 function java::PrimitiveWideningWithBoxing\.testByteToLong:\(\)V bytecode-index 15: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testByteToLong:\(\)V\.assertion\.2\] line 27 assertion at file PrimitiveWideningWithBoxing\.java line 27 function java::PrimitiveWideningWithBoxing\.testByteToLong:\(\)V bytecode-index 21: FAILURE
^EXIT=10$
^SIGNAL=0$
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Character.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testCharacter --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testCharacter:\(\)V\.assertion\.1\] line 99 assertion at file BoxingLambda\.java line 99 function java::BoxingLambda\.testCharacter:\(\)V bytecode-index 26: SUCCESS
\[java::BoxingLambda\.testCharacter:\(\)V\.assertion\.2\] line 100 assertion at file BoxingLambda\.java line 100 function java::BoxingLambda\.testCharacter:\(\)V bytecode-index 37: SUCCESS
\[java::BoxingLambda\.testCharacter:\(\)V\.assertion\.3\] line 101 assertion at file BoxingLambda\.java line 101 function java::BoxingLambda\.testCharacter:\(\)V bytecode-index 50: SUCCESS
\[java::BoxingLambda\.testCharacter:\(\)V\.assertion\.4\] line 102 assertion at file BoxingLambda\.java line 102 function java::BoxingLambda\.testCharacter:\(\)V bytecode-index 56: FAILURE
^EXIT=10$
^SIGNAL=0$
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Double.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testDouble --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testDouble:\(\)V\.assertion\.1\] line 112 assertion at file BoxingLambda\.java line 112 function java::BoxingLambda\.testDouble:\(\)V bytecode-index 27: SUCCESS
\[java::BoxingLambda\.testDouble:\(\)V\.assertion\.2\] line 113 assertion at file BoxingLambda\.java line 113 function java::BoxingLambda\.testDouble:\(\)V bytecode-index 39: SUCCESS
\[java::BoxingLambda\.testDouble:\(\)V\.assertion\.3\] line 114 assertion at file BoxingLambda\.java line 114 function java::BoxingLambda\.testDouble:\(\)V bytecode-index 53: SUCCESS
\[java::BoxingLambda\.testDouble:\(\)V\.assertion\.4\] line 115 assertion at file BoxingLambda\.java line 115 function java::BoxingLambda\.testDouble:\(\)V bytecode-index 59: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/DoubleToFloat.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testDoubleToFloat --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testDoubleToFloat:\(\)V\.assertion\.1\] line 66 assertion at file PrimitiveWideningWithBoxing\.java line 66 function java::PrimitiveWideningWithBoxing\.testDoubleToFloat:\(\)V bytecode-index 13: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testDoubleToFloat:\(\)V\.assertion\.2\] line 67 assertion at file PrimitiveWideningWithBoxing\.java line 67 function java::PrimitiveWideningWithBoxing\.testDoubleToFloat:\(\)V bytecode-index 19: FAILURE
^EXIT=10$
^SIGNAL=0$
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Float.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testFloat --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testFloat:\(\)V\.assertion\.1\] line 125 assertion at file BoxingLambda\.java line 125 function java::BoxingLambda\.testFloat:\(\)V bytecode-index 27: SUCCESS
\[java::BoxingLambda\.testFloat:\(\)V\.assertion\.2\] line 126 assertion at file BoxingLambda\.java line 126 function java::BoxingLambda\.testFloat:\(\)V bytecode-index 39: SUCCESS
\[java::BoxingLambda\.testFloat:\(\)V\.assertion\.3\] line 127 assertion at file BoxingLambda\.java line 127 function java::BoxingLambda\.testFloat:\(\)V bytecode-index 53: SUCCESS
\[java::BoxingLambda\.testFloat:\(\)V\.assertion\.4\] line 128 assertion at file BoxingLambda\.java line 128 function java::BoxingLambda\.testFloat:\(\)V bytecode-index 59: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/FloatToDouble.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testFloatToDouble --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testFloatToDouble:\(\)V\.assertion\.1\] line 44 assertion at file PrimitiveWideningWithBoxing\.java line 44 function java::PrimitiveWideningWithBoxing\.testFloatToDouble:\(\)V bytecode-index 15: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testFloatToDouble:\(\)V\.assertion\.2\] line 45 assertion at file PrimitiveWideningWithBoxing\.java line 45 function java::PrimitiveWideningWithBoxing\.testFloatToDouble:\(\)V bytecode-index 21: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/IntToLong.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testIntToLong --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testIntToLong:\(\)V\.assertion\.1\] line 38 assertion at file PrimitiveWideningWithBoxing\.java line 38 function java::PrimitiveWideningWithBoxing\.testIntToLong:\(\)V bytecode-index 15: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testIntToLong:\(\)V\.assertion\.2\] line 39 assertion at file PrimitiveWideningWithBoxing\.java line 39 function java::PrimitiveWideningWithBoxing\.testIntToLong:\(\)V bytecode-index 21: FAILURE
^EXIT=10$
^SIGNAL=0$
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Integer.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testInteger --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testInteger:\(\)V\.assertion\.1\] line 138 assertion at file BoxingLambda\.java line 138 function java::BoxingLambda\.testInteger:\(\)V bytecode-index 26: SUCCESS
\[java::BoxingLambda\.testInteger:\(\)V\.assertion\.2\] line 139 assertion at file BoxingLambda\.java line 139 function java::BoxingLambda\.testInteger:\(\)V bytecode-index 37: SUCCESS
\[java::BoxingLambda\.testInteger:\(\)V\.assertion\.3\] line 140 assertion at file BoxingLambda\.java line 140 function java::BoxingLambda\.testInteger:\(\)V bytecode-index 50: SUCCESS
\[java::BoxingLambda\.testInteger:\(\)V\.assertion\.4\] line 141 assertion at file BoxingLambda\.java line 141 function java::BoxingLambda\.testInteger:\(\)V bytecode-index 56: FAILURE
^EXIT=10$
^SIGNAL=0$
9 changes: 9 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/Long.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
CORE
BoxingLambda
--function BoxingLambda.testLong --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::BoxingLambda\.testLong:\(\)V\.assertion\.1\] line 151 assertion at file BoxingLambda\.java line 151 function java::BoxingLambda\.testLong:\(\)V bytecode-index 27: SUCCESS
\[java::BoxingLambda\.testLong:\(\)V\.assertion\.2\] line 152 assertion at file BoxingLambda\.java line 152 function java::BoxingLambda\.testLong:\(\)V bytecode-index 39: SUCCESS
\[java::BoxingLambda\.testLong:\(\)V\.assertion\.3\] line 153 assertion at file BoxingLambda\.java line 153 function java::BoxingLambda\.testLong:\(\)V bytecode-index 53: SUCCESS
\[java::BoxingLambda\.testLong:\(\)V\.assertion\.4\] line 154 assertion at file BoxingLambda\.java line 154 function java::BoxingLambda\.testLong:\(\)V bytecode-index 59: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/LongToByte.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testLongToByte --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testLongToByte:\(\)V\.assertion\.1\] line 72 assertion at file PrimitiveWideningWithBoxing\.java line 72 function java::PrimitiveWideningWithBoxing\.testLongToByte:\(\)V bytecode-index 13: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testLongToByte:\(\)V\.assertion\.2\] line 73 assertion at file PrimitiveWideningWithBoxing\.java line 73 function java::PrimitiveWideningWithBoxing\.testLongToByte:\(\)V bytecode-index 19: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/LongToInt.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testLongToInt --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testLongToInt:\(\)V\.assertion\.1\] line 84 assertion at file PrimitiveWideningWithBoxing\.java line 84 function java::PrimitiveWideningWithBoxing\.testLongToInt:\(\)V bytecode-index 13: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testLongToInt:\(\)V\.assertion\.2\] line 85 assertion at file PrimitiveWideningWithBoxing\.java line 85 function java::PrimitiveWideningWithBoxing\.testLongToInt:\(\)V bytecode-index 19: FAILURE
^EXIT=10$
^SIGNAL=0$
7 changes: 7 additions & 0 deletions jbmc/regression/jbmc/lambda-boxing/LongToShort.desc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CORE
PrimitiveWideningWithBoxing
--function PrimitiveWideningWithBoxing\.testLongToShort --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
\[java::PrimitiveWideningWithBoxing\.testLongToShort:\(\)V\.assertion\.1\] line 78 assertion at file PrimitiveWideningWithBoxing\.java line 78 function java::PrimitiveWideningWithBoxing\.testLongToShort:\(\)V bytecode-index 13: SUCCESS
\[java::PrimitiveWideningWithBoxing\.testLongToShort:\(\)V\.assertion\.2\] line 79 assertion at file PrimitiveWideningWithBoxing\.java line 79 function java::PrimitiveWideningWithBoxing\.testLongToShort:\(\)V bytecode-index 19: FAILURE
^EXIT=10$
^SIGNAL=0$
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
CORE
BoxingWithOtherConversions
--function BoxingWithOtherConversions.testNarrowParameterTypeToPrimitive --cp `../../../../scripts/format_classpath.sh . ../../../lib/java-models-library/target/core-models.jar`
^EXIT=10$
^SIGNAL=0$
\[java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V.assertion.1\] line 17 assertion at file BoxingWithOtherConversions\.java line 17 function java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V bytecode-index 21: SUCCESS
\[java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V.assertion.2\] line 18 assertion at file BoxingWithOtherConversions\.java line 18 function java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V bytecode-index 34: SUCCESS
\[java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V.assertion.3\] line 19 assertion at file BoxingWithOtherConversions\.java line 19 function java::BoxingWithOtherConversions\.testNarrowParameterTypeToPrimitive:\(\)V bytecode-index 40: FAILURE
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading