Skip to content

Failed

org.eclipse.jdt.core.tests.compiler.regression.GenericTypeTest.test1445 - 12 (from org.eclipse.jdt.core.tests.compiler.regression.TestAll)

Failing for the past 1 build (Since #44 )
Took 0.8 sec.

Error Message

test1445 - Eclipse found error(s) but Javac only found warning(s).
----------- Expected ------------
----------\n
1. WARNING in X.java (at line 8)\n
 static void bar(List l) {\n
                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
2. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
3. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
4. ERROR in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
5. ERROR in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
6. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
       ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
7. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
              ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
8. WARNING in X.java (at line 11)\n
 static void baz(List l) throws IOException {\n
                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
9. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
10. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
11. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
                     ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
12. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
                                           ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
13. WARNING in X.java (at line 15)\n
 X(List l, long l2) throws IOException {\n
   ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
14. WARNING in X.java (at line 16)\n
 <IOException> this(l);\n
               ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
15. WARNING in X.java (at line 16)\n
 <IOException> this(l);\n
                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
16. WARNING in X.java (at line 19)\n
 static void baz2(List l) throws IOException {\n
                  ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
17. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
18. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
19. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
                     ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
20. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
                                             ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n

------------ but was ------------
X.java:8: warning: [rawtypes] found raw type: List\n
 static void bar(List l) {\n
                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:9: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  new X(l).foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
  new X(l).foo(l);\n
        ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new X(l).foo(l);\n
              ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
  new X(l).foo(l);\n
               ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:11: warning: [rawtypes] found raw type: List\n
 static void baz(List l) throws IOException {\n
                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:12: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  new <IOException> X(l). <IOException> foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l). <IOException> foo(l);\n
                      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new <IOException> X(l). <IOException> foo(l);\n
                                           ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l). <IOException> foo(l);\n
                                            ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:15: warning: [rawtypes] found raw type: List\n
 X(List l, long l2) throws IOException {\n
   ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:16: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  <IOException> this(l);\n
                    ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:16: warning: [unchecked] unchecked conversion\n
  <IOException> this(l);\n
                     ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:19: warning: [rawtypes] found raw type: List\n
 static void baz2(List l) throws IOException {\n
                  ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:20: warning: [unchecked] unchecked method invocation: constructor <init> in class <anonymous X$1> is applied to given types\n
  new <IOException> X(l){}. <IOException> foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                                             ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                                              ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
18 warnings\n

--------- Difference is ----------
 expected:<[----------\n
1. WARNING in X.java (at line 8)\n
 static void bar(List l) {\n
                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
2. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
3. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
4. ERROR in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
5. ERROR in X.java (at line 9)\n
 new X(l).foo(l);\n
 ^^^^^^^^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
6. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
       ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
7. WARNING in X.java (at line 9)\n
 new X(l).foo(l);\n
              ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
8. WARNING in X.java (at line 11)\n
 static void baz(List l) throws IOException {\n
                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
9. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
10. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
11. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
                     ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
12. WARNING in X.java (at line 12)\n
 new <IOException> X(l). <IOException> foo(l);\n
                                           ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
13. WARNING in X.java (at line 15)\n
 X(List l, long l2) throws IOException {\n
   ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
14. WARNING in X.java (at line 16)\n
 <IOException> this(l);\n
               ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
15. WARNING in X.java (at line 16)\n
 <IOException> this(l);\n
                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
16. WARNING in X.java (at line 19)\n
 static void baz2(List l) throws IOException {\n
                  ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
17. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
18. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
19. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
                     ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
20. WARNING in X.java (at line 20)\n
 new <IOException> X(l){}. <IOException> foo(l);\n
                                             ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------]\n
> but was:<[X.java:8: warning: [rawtypes] found raw type: List\n
 static void bar(List l) {\n
                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:9: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  new X(l).foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
  new X(l).foo(l);\n
        ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new X(l).foo(l);\n
              ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
  new X(l).foo(l);\n
               ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:11: warning: [rawtypes] found raw type: List\n
 static void baz(List l) throws IOException {\n
                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:12: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  new <IOException> X(l). <IOException> foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l). <IOException> foo(l);\n
                      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new <IOException> X(l). <IOException> foo(l);\n
                                           ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l). <IOException> foo(l);\n
                                            ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:15: warning: [rawtypes] found raw type: List\n
 X(List l, long l2) throws IOException {\n
   ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:16: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
  <IOException> this(l);\n
                    ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:16: warning: [unchecked] unchecked conversion\n
  <IOException> this(l);\n
                     ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:19: warning: [rawtypes] found raw type: List\n
 static void baz2(List l) throws IOException {\n
                  ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:20: warning: [unchecked] unchecked method invocation: constructor <init> in class <anonymous X$1> is applied to given types\n
  new <IOException> X(l){}. <IOException> foo(l);\n
  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                                             ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
  new <IOException> X(l){}. <IOException> foo(l);\n
                                              ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
18 warnings]\n
>

Stacktrace

junit.framework.ComparisonFailure: 
test1445 - Eclipse found error(s) but Javac only found warning(s).
----------- Expected ------------
----------\n
1. WARNING in X.java (at line 8)\n
	static void bar(List l) {\n
	                ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
2. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
3. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
4. ERROR in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
5. ERROR in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
6. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	      ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
7. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	             ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
8. WARNING in X.java (at line 11)\n
	static void baz(List l) throws IOException {\n
	                ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
9. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
10. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
11. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
12. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	                                          ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
13. WARNING in X.java (at line 15)\n
	X(List l, long l2) throws IOException {\n
	  ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
14. WARNING in X.java (at line 16)\n
	<IOException> this(l);\n
	              ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
15. WARNING in X.java (at line 16)\n
	<IOException> this(l);\n
	                   ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
16. WARNING in X.java (at line 19)\n
	static void baz2(List l) throws IOException {\n
	                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
17. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
18. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
19. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
20. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	                                            ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n

------------ but was ------------
X.java:8: warning: [rawtypes] found raw type: List\n
	static void bar(List l) {\n
	                ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:9: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		new X(l).foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
		new X(l).foo(l);\n
		      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new X(l).foo(l);\n
		            ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
		new X(l).foo(l);\n
		             ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:11: warning: [rawtypes] found raw type: List\n
	static void baz(List l) throws IOException {\n
	                ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:12: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		new <IOException> X(l). <IOException> foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l). <IOException> foo(l);\n
		                    ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new <IOException> X(l). <IOException> foo(l);\n
		                                         ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l). <IOException> foo(l);\n
		                                          ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:15: warning: [rawtypes] found raw type: List\n
	X(List l, long l2) throws IOException {\n
	  ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:16: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		<IOException> this(l);\n
		                  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:16: warning: [unchecked] unchecked conversion\n
		<IOException> this(l);\n
		                   ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:19: warning: [rawtypes] found raw type: List\n
	static void baz2(List l) throws IOException {\n
	                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:20: warning: [unchecked] unchecked method invocation: constructor <init> in class <anonymous X$1> is applied to given types\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                    ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                                           ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                                            ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
18 warnings\n

--------- Difference is ----------
 expected:<[----------\n
1. WARNING in X.java (at line 8)\n
	static void bar(List l) {\n
	                ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
2. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
3. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
4. ERROR in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
5. ERROR in X.java (at line 9)\n
	new X(l).foo(l);\n
	^^^^^^^^^^^^^^^\n
Unhandled exception type Throwable\n
----------\n
6. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	      ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
7. WARNING in X.java (at line 9)\n
	new X(l).foo(l);\n
	             ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<RuntimeException>\n
----------\n
8. WARNING in X.java (at line 11)\n
	static void baz(List l) throws IOException {\n
	                ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
9. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
10. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
11. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
12. WARNING in X.java (at line 12)\n
	new <IOException> X(l). <IOException> foo(l);\n
	                                          ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
13. WARNING in X.java (at line 15)\n
	X(List l, long l2) throws IOException {\n
	  ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
14. WARNING in X.java (at line 16)\n
	<IOException> this(l);\n
	              ^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
15. WARNING in X.java (at line 16)\n
	<IOException> this(l);\n
	                   ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
16. WARNING in X.java (at line 19)\n
	static void baz2(List l) throws IOException {\n
	                 ^^^^\n
List is a raw type. References to generic type List<E> should be parameterized\n
----------\n
17. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation X(List) of the generic constructor X(List<T>) of type X\n
----------\n
18. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n
Type safety: Unchecked invocation foo(List) of the generic method foo(List<T>) of type X\n
----------\n
19. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	                    ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------\n
20. WARNING in X.java (at line 20)\n
	new <IOException> X(l){}. <IOException> foo(l);\n
	                                            ^\n
Type safety: The expression of type List needs unchecked conversion to conform to List<IOException>\n
----------]\n
> but was:<[X.java:8: warning: [rawtypes] found raw type: List\n
	static void bar(List l) {\n
	                ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:9: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		new X(l).foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
		new X(l).foo(l);\n
		      ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:9: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new X(l).foo(l);\n
		            ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:9: warning: [unchecked] unchecked conversion\n
		new X(l).foo(l);\n
		             ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:11: warning: [rawtypes] found raw type: List\n
	static void baz(List l) throws IOException {\n
	                ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:12: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		new <IOException> X(l). <IOException> foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l). <IOException> foo(l);\n
		                    ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:12: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new <IOException> X(l). <IOException> foo(l);\n
		                                         ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:12: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l). <IOException> foo(l);\n
		                                          ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:15: warning: [rawtypes] found raw type: List\n
	X(List l, long l2) throws IOException {\n
	  ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:16: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types\n
		<IOException> this(l);\n
		                  ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:16: warning: [unchecked] unchecked conversion\n
		<IOException> this(l);\n
		                   ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:19: warning: [rawtypes] found raw type: List\n
	static void baz2(List l) throws IOException {\n
	                 ^\n
  missing type arguments for generic class List<E>\n
  where E is a type-variable:\n
    E extends Object declared in interface List\n
X.java:20: warning: [unchecked] unchecked method invocation: constructor <init> in class <anonymous X$1> is applied to given types\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                    ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in constructor <T>X(List<T>)\n
X.java:20: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                                           ^\n
  required: List<T>\n
  found: List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
X.java:20: warning: [unchecked] unchecked conversion\n
		new <IOException> X(l){}. <IOException> foo(l);\n
		                                            ^\n
  required: List<T>\n
  found:    List\n
  where T is a type-variable:\n
    T extends Throwable declared in method <T>foo(List<T>)\n
18 warnings]\n
>
	at org.eclipse.jdt.core.tests.compiler.regression.GenericTypeTest.test1445(GenericTypeTest.java:50891)

Standard Output

org.eclipse.jdt.core.tests.compiler.regression.GenericTypeTest#test1445 - 12
X.java [
import java.io.IOException;
import java.util.List;

public class X {
	<T extends Throwable> X(List<T> lt) throws T { }
	<T extends Throwable> List<T> foo(List<T> t) throws T { return t; }

	static void bar(List l) {
		new X(l).foo(l);
	}
	static void baz(List l) throws IOException {
		new <IOException> X(l). <IOException> foo(l);
	}
	
	X(List l, long l2) throws IOException {
		<IOException> this(l);
	}

	static void baz2(List l) throws IOException {
		new <IOException> X(l){}. <IOException> foo(l);
	}

}

]


Full results sent to /tmp/genie.jdt/comptest/run.1565715170219/12_20190813_125251.txt

Standard Error

--- javac err: ---
X.java:8: warning: [rawtypes] found raw type: List
	static void bar(List l) {
	                ^
  missing type arguments for generic class List<E>
  where E is a type-variable:
    E extends Object declared in interface List
X.java:9: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types
		new X(l).foo(l);
		^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:9: warning: [unchecked] unchecked conversion
		new X(l).foo(l);
		      ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:9: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types
		new X(l).foo(l);
		            ^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
X.java:9: warning: [unchecked] unchecked conversion
		new X(l).foo(l);
		             ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
X.java:11: warning: [rawtypes] found raw type: List
	static void baz(List l) throws IOException {
	                ^
  missing type arguments for generic class List<E>
  where E is a type-variable:
    E extends Object declared in interface List
X.java:12: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types
		new <IOException> X(l). <IOException> foo(l);
		^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:12: warning: [unchecked] unchecked conversion
		new <IOException> X(l). <IOException> foo(l);
		                    ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:12: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types
		new <IOException> X(l). <IOException> foo(l);
		                                         ^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
X.java:12: warning: [unchecked] unchecked conversion
		new <IOException> X(l). <IOException> foo(l);
		                                          ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
X.java:15: warning: [rawtypes] found raw type: List
	X(List l, long l2) throws IOException {
	  ^
  missing type arguments for generic class List<E>
  where E is a type-variable:
    E extends Object declared in interface List
X.java:16: warning: [unchecked] unchecked method invocation: constructor <init> in class X is applied to given types
		<IOException> this(l);
		                  ^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:16: warning: [unchecked] unchecked conversion
		<IOException> this(l);
		                   ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:19: warning: [rawtypes] found raw type: List
	static void baz2(List l) throws IOException {
	                 ^
  missing type arguments for generic class List<E>
  where E is a type-variable:
    E extends Object declared in interface List
X.java:20: warning: [unchecked] unchecked method invocation: constructor <init> in class <anonymous X$1> is applied to given types
		new <IOException> X(l){}. <IOException> foo(l);
		^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:20: warning: [unchecked] unchecked conversion
		new <IOException> X(l){}. <IOException> foo(l);
		                    ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in constructor <T>X(List<T>)
X.java:20: warning: [unchecked] unchecked method invocation: method foo in class X is applied to given types
		new <IOException> X(l){}. <IOException> foo(l);
		                                           ^
  required: List<T>
  found: List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
X.java:20: warning: [unchecked] unchecked conversion
		new <IOException> X(l){}. <IOException> foo(l);
		                                            ^
  required: List<T>
  found:    List
  where T is a type-variable:
    T extends Throwable declared in method <T>foo(List<T>)
18 warnings

----------------------------------------