Fixing bug in recognizing Class<?> as a WilcardTypeImpl.
[jpf-core.git] / src / main / gov / nasa / jpf / vm / Types.java
index 948b42e512013b1b7cd88d2a0b002252e59dd8c3..61a17a88d6053e592cb327dd9e026f0ebecdf731 100644 (file)
@@ -1109,11 +1109,16 @@ public class Types {
       int semicolon = signature.indexOf(';', idx);
       // TODO: Fix for Groovy's model-checking
       // Check if this is a generic!
-      if (signature.substring(idx,semicolon).indexOf('<') != -1) {
-        int generic = signature.indexOf('>', semicolon);
-        if (generic != -1) {
-          // Advance one character past the ';'
-          semicolon = generic + 1;
+      int genericStart = signature.substring(idx,semicolon).indexOf('<');
+      if (genericStart != -1) {
+        if (signature.charAt(genericStart + 2) == '*') {
+          semicolon = genericStart + 4;
+        } else {
+          int generic = signature.indexOf('>', semicolon);
+          if (generic != -1) {
+            // Advance one character past the ';'
+            semicolon = generic + 1;
+          }
         }
       }