From d772dfa80ea692f916aa6718d04c4f7bfb2a746b Mon Sep 17 00:00:00 2001 From: Cyrille Artho Date: Sat, 24 Nov 2018 11:17:37 +0100 Subject: [PATCH] FIX: java.lang.Object should be java/lang/Object. modified: src/main/gov/nasa/jpf/vm/Types.java: Fixed incorrect type descr. modified: src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java: Unit test. --- src/main/gov/nasa/jpf/vm/Types.java | 8 ++++---- src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java | 8 ++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/gov/nasa/jpf/vm/Types.java b/src/main/gov/nasa/jpf/vm/Types.java index fb4add6..ee64f70 100644 --- a/src/main/gov/nasa/jpf/vm/Types.java +++ b/src/main/gov/nasa/jpf/vm/Types.java @@ -415,9 +415,9 @@ public class Types { * * int -> int * int[] -> [I - * String -> java.lang.String - * String[] -> [Ljava.lang.String; - * String[][] -> [[Ljava.lang.String; + * String -> java/lang/String + * String[] -> [Ljava/lang/String; + * String[][] -> [[Ljava/lang/String; * * <2do> this is really not very efficient */ @@ -1020,7 +1020,7 @@ public class Types { public static boolean instanceOf (String type, String ofType) { int bType = getBuiltinTypeFromSignature(type); - if ((bType == T_ARRAY) && ofType.equals("Ljava.lang.Object;")) { + if ((bType == T_ARRAY) && ofType.equals("Ljava/lang/Object;")) { return true; } diff --git a/src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java b/src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java index 5d7e1d6..f20f5a8 100644 --- a/src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java +++ b/src/tests/gov/nasa/jpf/test/java/lang/ClassTest.java @@ -582,4 +582,12 @@ public class ClassTest extends TestJPF implements Cloneable, Serializable { assertNull(c.getResource("not_existing_resources")); } } + + @Test + public void instanceOfArrayTest() { + String[] args = new String[0]; + if (verifyNoPropertyViolation()) { + assert args instanceof Object; + } + } } -- 2.34.1