Lines 1141-1147
Link Here
|
1141 |
"----------\n" + |
1141 |
"----------\n" + |
1142 |
"1. ERROR in X.java (at line 15)\n" + |
1142 |
"1. ERROR in X.java (at line 15)\n" + |
1143 |
" String s = t = \"SUC\";\n" + |
1143 |
" String s = t = \"SUC\";\n" + |
1144 |
" ^\n" + |
1144 |
" ^^^^^^^^^\n" + |
1145 |
"Type mismatch: cannot convert from T to String\n" + |
1145 |
"Type mismatch: cannot convert from T to String\n" + |
1146 |
"----------\n" + |
1146 |
"----------\n" + |
1147 |
"2. ERROR in X.java (at line 15)\n" + |
1147 |
"2. ERROR in X.java (at line 15)\n" + |
Lines 1186-1192
Link Here
|
1186 |
"----------\n" + |
1186 |
"----------\n" + |
1187 |
"1. ERROR in X.java (at line 14)\n" + |
1187 |
"1. ERROR in X.java (at line 14)\n" + |
1188 |
" X x = t;\n" + |
1188 |
" X x = t;\n" + |
1189 |
" ^\n" + |
1189 |
" ^\n" + |
1190 |
"Type mismatch: cannot convert from T to X\n" + |
1190 |
"Type mismatch: cannot convert from T to X\n" + |
1191 |
"----------\n"); |
1191 |
"----------\n"); |
1192 |
} |
1192 |
} |
Lines 2950-2971
Link Here
|
2950 |
" }\n" + |
2950 |
" }\n" + |
2951 |
"}\n", |
2951 |
"}\n", |
2952 |
}, |
2952 |
}, |
2953 |
"----------\n" + |
2953 |
"----------\n" + |
2954 |
"1. ERROR in X.java (at line 7)\n" + |
2954 |
"1. ERROR in X.java (at line 7)\n" + |
2955 |
" X<? extends BX> x = new X<AX<String>>(new AX<String>());\n" + |
2955 |
" X<? extends BX> x = new X<AX<String>>(new AX<String>());\n" + |
2956 |
" ^\n" + |
2956 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
2957 |
"Type mismatch: cannot convert from X<AX<String>> to X<? extends BX>\n" + |
2957 |
"Type mismatch: cannot convert from X<AX<String>> to X<? extends BX>\n" + |
2958 |
"----------\n" + |
2958 |
"----------\n" + |
2959 |
"2. WARNING in X.java (at line 8)\n" + |
2959 |
"2. WARNING in X.java (at line 8)\n" + |
2960 |
" x.t.foo(\"SUCC\");\n" + |
2960 |
" x.t.foo(\"SUCC\");\n" + |
2961 |
" ^^^^^^^^^^^^^^^\n" + |
2961 |
" ^^^^^^^^^^^^^^^\n" + |
2962 |
"Type safety: The method foo(Object) belongs to the raw type AX. References to generic type AX<P> should be parameterized\n" + |
2962 |
"Type safety: The method foo(Object) belongs to the raw type AX. References to generic type AX<P> should be parameterized\n" + |
2963 |
"----------\n" + |
2963 |
"----------\n" + |
2964 |
"3. WARNING in X.java (at line 9)\n" + |
2964 |
"3. WARNING in X.java (at line 9)\n" + |
2965 |
" x.t.bar(\"ESS\");\n" + |
2965 |
" x.t.bar(\"ESS\");\n" + |
2966 |
" ^^^^^^^^^^^^^^\n" + |
2966 |
" ^^^^^^^^^^^^^^\n" + |
2967 |
"Type safety: The method bar(Object) belongs to the raw type BX. References to generic type BX<Q> should be parameterized\n" + |
2967 |
"Type safety: The method bar(Object) belongs to the raw type BX. References to generic type BX<Q> should be parameterized\n" + |
2968 |
"----------\n"); |
2968 |
"----------\n"); |
2969 |
} |
2969 |
} |
2970 |
public void test105() { |
2970 |
public void test105() { |
2971 |
this.runConformTest( |
2971 |
this.runConformTest( |
Lines 3544-3550
Link Here
|
3544 |
"----------\n" + |
3544 |
"----------\n" + |
3545 |
"1. ERROR in X.java (at line 7)\n" + |
3545 |
"1. ERROR in X.java (at line 7)\n" + |
3546 |
" Class<? extends X> c3 = s.getClass();\n" + |
3546 |
" Class<? extends X> c3 = s.getClass();\n" + |
3547 |
" ^^\n" + |
3547 |
" ^^^^^^^^^^^^\n" + |
3548 |
"Type mismatch: cannot convert from Class<capture-of ? extends String> to Class<? extends X>\n" + |
3548 |
"Type mismatch: cannot convert from Class<capture-of ? extends String> to Class<? extends X>\n" + |
3549 |
"----------\n"); |
3549 |
"----------\n"); |
3550 |
} |
3550 |
} |
Lines 3574-3580
Link Here
|
3574 |
"----------\n" + |
3574 |
"----------\n" + |
3575 |
"1. ERROR in X.java (at line 8)\n" + |
3575 |
"1. ERROR in X.java (at line 8)\n" + |
3576 |
" Class<? extends XY> c3 = s.getClass();\n" + |
3576 |
" Class<? extends XY> c3 = s.getClass();\n" + |
3577 |
" ^^\n" + |
3577 |
" ^^^^^^^^^^^^\n" + |
3578 |
"Type mismatch: cannot convert from Class<capture-of ? extends String> to Class<? extends XY>\n" + |
3578 |
"Type mismatch: cannot convert from Class<capture-of ? extends String> to Class<? extends XY>\n" + |
3579 |
"----------\n" + |
3579 |
"----------\n" + |
3580 |
"2. WARNING in X.java (at line 14)\n" + |
3580 |
"2. WARNING in X.java (at line 14)\n" + |
Lines 3972-3978
Link Here
|
3972 |
"----------\n" + |
3972 |
"----------\n" + |
3973 |
"1. ERROR in X.java (at line 5)\n" + |
3973 |
"1. ERROR in X.java (at line 5)\n" + |
3974 |
" Class<Object> xo2 = xx;\n" + |
3974 |
" Class<Object> xo2 = xx;\n" + |
3975 |
" ^^^\n" + |
3975 |
" ^^\n" + |
3976 |
"Type mismatch: cannot convert from Class<capture-of ? extends X> to Class<Object>\n" + |
3976 |
"Type mismatch: cannot convert from Class<capture-of ? extends X> to Class<Object>\n" + |
3977 |
"----------\n"); |
3977 |
"----------\n"); |
3978 |
} |
3978 |
} |
Lines 4593-4599
Link Here
|
4593 |
"----------\n" + |
4593 |
"----------\n" + |
4594 |
"1. ERROR in X.java (at line 4)\n" + |
4594 |
"1. ERROR in X.java (at line 4)\n" + |
4595 |
" AX<String, Thread> a = bar();\n" + |
4595 |
" AX<String, Thread> a = bar();\n" + |
4596 |
" ^\n" + |
4596 |
" ^^^^^\n" + |
4597 |
"Type mismatch: cannot convert from AX<AX<Object,Object>,Thread> to AX<String,Thread>\n" + |
4597 |
"Type mismatch: cannot convert from AX<AX<Object,Object>,Thread> to AX<String,Thread>\n" + |
4598 |
"----------\n" + |
4598 |
"----------\n" + |
4599 |
"2. WARNING in X.java (at line 9)\n" + |
4599 |
"2. WARNING in X.java (at line 9)\n" + |
Lines 4631-4637
Link Here
|
4631 |
"----------\n" + |
4631 |
"----------\n" + |
4632 |
"1. ERROR in X.java (at line 4)\n" + |
4632 |
"1. ERROR in X.java (at line 4)\n" + |
4633 |
" AX<String> a = bar(new X());\n" + |
4633 |
" AX<String> a = bar(new X());\n" + |
4634 |
" ^\n" + |
4634 |
" ^^^^^^^^^^^^\n" + |
4635 |
"Type mismatch: cannot convert from AX<X> to AX<String>\n" + |
4635 |
"Type mismatch: cannot convert from AX<X> to AX<String>\n" + |
4636 |
"----------\n" + |
4636 |
"----------\n" + |
4637 |
"2. WARNING in X.java (at line 9)\n" + |
4637 |
"2. WARNING in X.java (at line 9)\n" + |
Lines 5977-5983
Link Here
|
5977 |
"----------\n" + |
5977 |
"----------\n" + |
5978 |
"1. ERROR in X.java (at line 7)\n" + |
5978 |
"1. ERROR in X.java (at line 7)\n" + |
5979 |
" Integer i = al.get(0); // (2)\n" + |
5979 |
" Integer i = al.get(0); // (2)\n" + |
5980 |
" ^\n" + |
5980 |
" ^^^^^^^^^\n" + |
5981 |
"Type mismatch: cannot convert from capture-of ? super Integer to Integer\n" + |
5981 |
"Type mismatch: cannot convert from capture-of ? super Integer to Integer\n" + |
5982 |
"----------\n"); |
5982 |
"----------\n"); |
5983 |
} |
5983 |
} |
Lines 6021-6027
Link Here
|
6021 |
"----------\n" + |
6021 |
"----------\n" + |
6022 |
"1. ERROR in X.java (at line 5)\n" + |
6022 |
"1. ERROR in X.java (at line 5)\n" + |
6023 |
" Integer i = lx.slot;\n" + |
6023 |
" Integer i = lx.slot;\n" + |
6024 |
" ^\n" + |
6024 |
" ^^^^^^^\n" + |
6025 |
"Type mismatch: cannot convert from capture-of ? super Integer to Integer\n" + |
6025 |
"Type mismatch: cannot convert from capture-of ? super Integer to Integer\n" + |
6026 |
"----------\n"); |
6026 |
"----------\n"); |
6027 |
} |
6027 |
} |
Lines 6206-6230
Link Here
|
6206 |
" ^^^^^^^^^^\n" + |
6206 |
" ^^^^^^^^^^\n" + |
6207 |
"Type safety: The cast from Collection to List<X> is actually checking against the erased type List\n" + |
6207 |
"Type safety: The cast from Collection to List<X> is actually checking against the erased type List\n" + |
6208 |
"----------\n" + |
6208 |
"----------\n" + |
6209 |
"6. ERROR in X.java (at line 10)\n" + |
6209 |
"6. WARNING in X.java (at line 10)\n" + |
6210 |
" void m5() { List c = null; List l = (Collection<X>)c; } // type mismatch\n" + |
6210 |
" void m5() { List c = null; List l = (Collection<X>)c; } // type mismatch\n" + |
6211 |
" ^\n" + |
6211 |
" ^^^^^^^^^^^^^^^^\n" + |
6212 |
"Type mismatch: cannot convert from Collection<X> to List\n" + |
6212 |
"Type safety: The cast from List to Collection<X> is actually checking against the erased type Collection\n" + |
6213 |
"----------\n" + |
6213 |
"----------\n" + |
6214 |
"7. WARNING in X.java (at line 10)\n" + |
6214 |
"7. ERROR in X.java (at line 10)\n" + |
6215 |
" void m5() { List c = null; List l = (Collection<X>)c; } // type mismatch\n" + |
6215 |
" void m5() { List c = null; List l = (Collection<X>)c; } // type mismatch\n" + |
6216 |
" ^^^^^^^^^^^^^^^^\n" + |
6216 |
" ^^^^^^^^^^^^^^^^\n" + |
6217 |
"Type safety: The cast from List to Collection<X> is actually checking against the erased type Collection\n" + |
6217 |
"Type mismatch: cannot convert from Collection<X> to List\n" + |
6218 |
"----------\n" + |
6218 |
"----------\n" + |
6219 |
"8. ERROR in X.java (at line 11)\n" + |
6219 |
"8. WARNING in X.java (at line 11)\n" + |
6220 |
" void m6() { List c = null; List l = (Collection<?>)c; } // type mismatch\n" + |
6220 |
" void m6() { List c = null; List l = (Collection<?>)c; } // type mismatch\n" + |
6221 |
" ^\n" + |
6221 |
" ^^^^^^^^^^^^^^^^\n" + |
6222 |
"Type mismatch: cannot convert from Collection<capture-of ?> to List\n" + |
6222 |
"Unnecessary cast from List to Collection<?>\n" + |
6223 |
"----------\n" + |
6223 |
"----------\n" + |
6224 |
"9. WARNING in X.java (at line 11)\n" + |
6224 |
"9. ERROR in X.java (at line 11)\n" + |
6225 |
" void m6() { List c = null; List l = (Collection<?>)c; } // type mismatch\n" + |
6225 |
" void m6() { List c = null; List l = (Collection<?>)c; } // type mismatch\n" + |
6226 |
" ^^^^^^^^^^^^^^^^\n" + |
6226 |
" ^^^^^^^^^^^^^^^^\n" + |
6227 |
"Unnecessary cast from List to Collection<?>\n" + |
6227 |
"Type mismatch: cannot convert from Collection<capture-of ?> to List\n" + |
6228 |
"----------\n"); |
6228 |
"----------\n"); |
6229 |
} |
6229 |
} |
6230 |
// conversion from raw to X<?> is safe (no unsafe warning) |
6230 |
// conversion from raw to X<?> is safe (no unsafe warning) |
Lines 6742-6753
Link Here
|
6742 |
" }\n" + |
6742 |
" }\n" + |
6743 |
"}\n" |
6743 |
"}\n" |
6744 |
}, |
6744 |
}, |
6745 |
"----------\n" + |
6745 |
"----------\n" + |
6746 |
"1. ERROR in X.java (at line 5)\n" + |
6746 |
"1. ERROR in X.java (at line 5)\n" + |
6747 |
" MX<Class<? extends Object>> mx2 = new MX<Class>();\n" + |
6747 |
" MX<Class<? extends Object>> mx2 = new MX<Class>();\n" + |
6748 |
" ^^^\n" + |
6748 |
" ^^^^^^^^^^^^^^^\n" + |
6749 |
"Type mismatch: cannot convert from X.MX<Class> to X.MX<Class<? extends Object>>\n" + |
6749 |
"Type mismatch: cannot convert from X.MX<Class> to X.MX<Class<? extends Object>>\n" + |
6750 |
"----------\n"); |
6750 |
"----------\n"); |
6751 |
} |
6751 |
} |
6752 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=69320 variation |
6752 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=69320 variation |
6753 |
public void test247() { |
6753 |
public void test247() { |
Lines 6772-6798
Link Here
|
6772 |
"----------\n" + |
6772 |
"----------\n" + |
6773 |
"1. ERROR in X.java (at line 3)\n" + |
6773 |
"1. ERROR in X.java (at line 3)\n" + |
6774 |
" MX<Class<? extends Object>> mx2 = new MX<Class>(); // wrong\n" + |
6774 |
" MX<Class<? extends Object>> mx2 = new MX<Class>(); // wrong\n" + |
6775 |
" ^^^\n" + |
6775 |
" ^^^^^^^^^^^^^^^\n" + |
6776 |
"Type mismatch: cannot convert from MX<Class> to MX<Class<? extends Object>>\n" + |
6776 |
"Type mismatch: cannot convert from MX<Class> to MX<Class<? extends Object>>\n" + |
6777 |
"----------\n" + |
6777 |
"----------\n" + |
6778 |
"2. ERROR in X.java (at line 4)\n" + |
6778 |
"2. ERROR in X.java (at line 4)\n" + |
6779 |
" MX<Class<? extends Object>> mx3 = new MX<Class<? extends String>>(); // wrong\n" + |
6779 |
" MX<Class<? extends Object>> mx3 = new MX<Class<? extends String>>(); // wrong\n" + |
6780 |
" ^^^\n" + |
6780 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
6781 |
"Type mismatch: cannot convert from MX<Class<? extends String>> to MX<Class<? extends Object>>\n" + |
6781 |
"Type mismatch: cannot convert from MX<Class<? extends String>> to MX<Class<? extends Object>>\n" + |
6782 |
"----------\n" + |
6782 |
"----------\n" + |
6783 |
"3. ERROR in X.java (at line 5)\n" + |
6783 |
"3. ERROR in X.java (at line 5)\n" + |
6784 |
" MX<Class<? extends Object>> mx4 = new MX<Class<String>>(); // wrong\n" + |
6784 |
" MX<Class<? extends Object>> mx4 = new MX<Class<String>>(); // wrong\n" + |
6785 |
" ^^^\n" + |
6785 |
" ^^^^^^^^^^^^^^^^^^^^^^^\n" + |
6786 |
"Type mismatch: cannot convert from MX<Class<String>> to MX<Class<? extends Object>>\n" + |
6786 |
"Type mismatch: cannot convert from MX<Class<String>> to MX<Class<? extends Object>>\n" + |
6787 |
"----------\n" + |
6787 |
"----------\n" + |
6788 |
"4. ERROR in X.java (at line 8)\n" + |
6788 |
"4. ERROR in X.java (at line 8)\n" + |
6789 |
" MX<Class<? extends Class>> mx7 = new MX<Class<Class>>(); // wrong\n" + |
6789 |
" MX<Class<? extends Class>> mx7 = new MX<Class<Class>>(); // wrong\n" + |
6790 |
" ^^^\n" + |
6790 |
" ^^^^^^^^^^^^^^^^^^^^^^\n" + |
6791 |
"Type mismatch: cannot convert from MX<Class<Class>> to MX<Class<? extends Class>>\n" + |
6791 |
"Type mismatch: cannot convert from MX<Class<Class>> to MX<Class<? extends Class>>\n" + |
6792 |
"----------\n" + |
6792 |
"----------\n" + |
6793 |
"5. ERROR in X.java (at line 9)\n" + |
6793 |
"5. ERROR in X.java (at line 9)\n" + |
6794 |
" MX<MX<? extends Class>> mx8 = new MX<MX<Class>>(); // wrong\n" + |
6794 |
" MX<MX<? extends Class>> mx8 = new MX<MX<Class>>(); // wrong\n" + |
6795 |
" ^^^\n" + |
6795 |
" ^^^^^^^^^^^^^^^^^^^\n" + |
6796 |
"Type mismatch: cannot convert from MX<MX<Class>> to MX<MX<? extends Class>>\n" + |
6796 |
"Type mismatch: cannot convert from MX<MX<Class>> to MX<MX<? extends Class>>\n" + |
6797 |
"----------\n"); |
6797 |
"----------\n"); |
6798 |
} |
6798 |
} |
Lines 6908-6922
Link Here
|
6908 |
" ^^^^^^^^^^^^^^^^\n" + |
6908 |
" ^^^^^^^^^^^^^^^^\n" + |
6909 |
"Type safety: The cast from List<capture-of ? extends Number> to List<Number> is actually checking against the erased type List\n" + |
6909 |
"Type safety: The cast from List<capture-of ? extends Number> to List<Number> is actually checking against the erased type List\n" + |
6910 |
"----------\n" + |
6910 |
"----------\n" + |
6911 |
"2. ERROR in X.java (at line 11)\n" + |
6911 |
"2. WARNING in X.java (at line 11)\n" + |
6912 |
" List<Number> ls2 = (List<? extends Number>)ls;\n" + |
6912 |
" List<Number> ls2 = (List<? extends Number>)ls;\n" + |
6913 |
" ^^^\n" + |
6913 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
6914 |
"Type mismatch: cannot convert from List<capture-of ? extends Number> to List<Number>\n" + |
6914 |
"Unnecessary cast from List<capture-of ? extends Number> to List<? extends Number>\n" + |
6915 |
"----------\n" + |
6915 |
"----------\n" + |
6916 |
"3. WARNING in X.java (at line 11)\n" + |
6916 |
"3. ERROR in X.java (at line 11)\n" + |
6917 |
" List<Number> ls2 = (List<? extends Number>)ls;\n" + |
6917 |
" List<Number> ls2 = (List<? extends Number>)ls;\n" + |
6918 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
6918 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
6919 |
"Unnecessary cast from List<capture-of ? extends Number> to List<? extends Number>\n" + |
6919 |
"Type mismatch: cannot convert from List<capture-of ? extends Number> to List<Number>\n" + |
6920 |
"----------\n" + |
6920 |
"----------\n" + |
6921 |
"4. WARNING in X.java (at line 12)\n" + |
6921 |
"4. WARNING in X.java (at line 12)\n" + |
6922 |
" List<? extends Number> ls3 = (List<? extends Number>) li;\n" + |
6922 |
" List<? extends Number> ls3 = (List<? extends Number>) li;\n" + |
Lines 7149-7155
Link Here
|
7149 |
"----------\n" + |
7149 |
"----------\n" + |
7150 |
"2. ERROR in X.java (at line 4)\n" + |
7150 |
"2. ERROR in X.java (at line 4)\n" + |
7151 |
" XC<U> xcu1 = (XC<?>) new X<E>(); \n" + |
7151 |
" XC<U> xcu1 = (XC<?>) new X<E>(); \n" + |
7152 |
" ^^^^\n" + |
7152 |
" ^^^^^^^^^^^^^^^^^^\n" + |
7153 |
"Type mismatch: cannot convert from XC<capture-of ?> to XC<U>\n" + |
7153 |
"Type mismatch: cannot convert from XC<capture-of ?> to XC<U>\n" + |
7154 |
"----------\n" + |
7154 |
"----------\n" + |
7155 |
"3. WARNING in X.java (at line 5)\n" + |
7155 |
"3. WARNING in X.java (at line 5)\n" + |
Lines 8627-8633
Link Here
|
8627 |
"----------\n" + |
8627 |
"----------\n" + |
8628 |
"1. ERROR in X.java (at line 3)\n" + |
8628 |
"1. ERROR in X.java (at line 3)\n" + |
8629 |
" X<String>.Item<Thread> i = new X<Exception>().new Item<Thread>();\n" + |
8629 |
" X<String>.Item<Thread> i = new X<Exception>().new Item<Thread>();\n" + |
8630 |
" ^\n" + |
8630 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
8631 |
"Type mismatch: cannot convert from X<Exception>.Item<Thread> to X<String>.Item<Thread>\n" + |
8631 |
"Type mismatch: cannot convert from X<Exception>.Item<Thread> to X<String>.Item<Thread>\n" + |
8632 |
"----------\n" + |
8632 |
"----------\n" + |
8633 |
"2. ERROR in X.java (at line 6)\n" + |
8633 |
"2. ERROR in X.java (at line 6)\n" + |
Lines 10535-10541
Link Here
|
10535 |
"----------\n" + |
10535 |
"----------\n" + |
10536 |
"1. ERROR in X.java (at line 4)\n" + |
10536 |
"1. ERROR in X.java (at line 4)\n" + |
10537 |
" String[] s = foo(null, new String[]{ \"hello\" });\n" + |
10537 |
" String[] s = foo(null, new String[]{ \"hello\" });\n" + |
10538 |
" ^\n" + |
10538 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
10539 |
"Type mismatch: cannot convert from String to String[]\n" + |
10539 |
"Type mismatch: cannot convert from String to String[]\n" + |
10540 |
"----------\n" |
10540 |
"----------\n" |
10541 |
); |
10541 |
); |
Lines 12323-12339
Link Here
|
12323 |
" }\n" + |
12323 |
" }\n" + |
12324 |
"}\n" , |
12324 |
"}\n" , |
12325 |
}, |
12325 |
}, |
12326 |
"----------\n" + |
12326 |
"----------\n" + |
12327 |
"1. ERROR in X.java (at line 6)\n" + |
12327 |
"1. ERROR in X.java (at line 6)\n" + |
12328 |
" X<String>.Inner<Integer> d4 = new X.Inner<Integer>();\n" + |
12328 |
" X<String>.Inner<Integer> d4 = new X.Inner<Integer>();\n" + |
12329 |
" ^^\n" + |
12329 |
" ^^^^^^^^^^^^^^^^^^^^^^\n" + |
12330 |
"Type mismatch: cannot convert from X.Inner<Integer> to X<String>.Inner<Integer>\n" + |
12330 |
"Type mismatch: cannot convert from X.Inner<Integer> to X<String>.Inner<Integer>\n" + |
12331 |
"----------\n" + |
12331 |
"----------\n" + |
12332 |
"2. ERROR in X.java (at line 6)\n" + |
12332 |
"2. ERROR in X.java (at line 6)\n" + |
12333 |
" X<String>.Inner<Integer> d4 = new X.Inner<Integer>();\n" + |
12333 |
" X<String>.Inner<Integer> d4 = new X.Inner<Integer>();\n" + |
12334 |
" ^^^^^^^\n" + |
12334 |
" ^^^^^^^\n" + |
12335 |
"The member type X.Inner<Integer> must be qualified with a parameterized type, since it is not static\n" + |
12335 |
"The member type X.Inner<Integer> must be qualified with a parameterized type, since it is not static\n" + |
12336 |
"----------\n"); |
12336 |
"----------\n"); |
12337 |
} |
12337 |
} |
12338 |
|
12338 |
|
12339 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=82159 - variation |
12339 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=82159 - variation |
Lines 12570-12576
Link Here
|
12570 |
"----------\n" + |
12570 |
"----------\n" + |
12571 |
"1. ERROR in X.java (at line 18)\n" + |
12571 |
"1. ERROR in X.java (at line 18)\n" + |
12572 |
" Number n1= b.getOne(); // fails\n" + |
12572 |
" Number n1= b.getOne(); // fails\n" + |
12573 |
" ^^\n" + |
12573 |
" ^^^^^^^^^^\n" + |
12574 |
"Type mismatch: cannot convert from Object to Number\n" + |
12574 |
"Type mismatch: cannot convert from Object to Number\n" + |
12575 |
"----------\n"); |
12575 |
"----------\n"); |
12576 |
} |
12576 |
} |
Lines 12639-12645
Link Here
|
12639 |
"----------\n" + |
12639 |
"----------\n" + |
12640 |
"1. ERROR in X.java (at line 8)\n" + |
12640 |
"1. ERROR in X.java (at line 8)\n" + |
12641 |
" Class<? extends Collection> d = getClazz(); // ko\n" + |
12641 |
" Class<? extends Collection> d = getClazz(); // ko\n" + |
12642 |
" ^\n" + |
12642 |
" ^^^^^^^^^^\n" + |
12643 |
"Type mismatch: cannot convert from Class<capture-of ? extends Object> to Class<? extends Collection>\n" + |
12643 |
"Type mismatch: cannot convert from Class<capture-of ? extends Object> to Class<? extends Collection>\n" + |
12644 |
"----------\n"); |
12644 |
"----------\n"); |
12645 |
} |
12645 |
} |
Lines 12893-12904
Link Here
|
12893 |
"----------\n" + |
12893 |
"----------\n" + |
12894 |
"1. ERROR in X.java (at line 12)\n" + |
12894 |
"1. ERROR in X.java (at line 12)\n" + |
12895 |
" Cloneable s4 = choose(true, new Integer(1), new Float(2));\n" + |
12895 |
" Cloneable s4 = choose(true, new Integer(1), new Float(2));\n" + |
12896 |
" ^^\n" + |
12896 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
12897 |
"Type mismatch: cannot convert from Number&Comparable<?> to Cloneable\n" + |
12897 |
"Type mismatch: cannot convert from Number&Comparable<?> to Cloneable\n" + |
12898 |
"----------\n" + |
12898 |
"----------\n" + |
12899 |
"2. ERROR in X.java (at line 13)\n" + |
12899 |
"2. ERROR in X.java (at line 13)\n" + |
12900 |
" Cloneable s5 = choose(true, \"string\", new Integer(1));\n" + |
12900 |
" Cloneable s5 = choose(true, \"string\", new Integer(1));\n" + |
12901 |
" ^^\n" + |
12901 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
12902 |
"Type mismatch: cannot convert from Object&Serializable&Comparable<?> to Cloneable\n" + |
12902 |
"Type mismatch: cannot convert from Object&Serializable&Comparable<?> to Cloneable\n" + |
12903 |
"----------\n"); |
12903 |
"----------\n"); |
12904 |
} |
12904 |
} |
Lines 13764-13770
Link Here
|
13764 |
"----------\n" + |
13764 |
"----------\n" + |
13765 |
"1. ERROR in X.java (at line 6)\n" + |
13765 |
"1. ERROR in X.java (at line 6)\n" + |
13766 |
" Integer[] var = cond ? tab1 : tab2;\n" + |
13766 |
" Integer[] var = cond ? tab1 : tab2;\n" + |
13767 |
" ^^^\n" + |
13767 |
" ^^^^^^^^^^^^^^^^^^\n" + |
13768 |
"Type mismatch: cannot convert from Object&Serializable&Cloneable to Integer[]\n" + |
13768 |
"Type mismatch: cannot convert from Object&Serializable&Cloneable to Integer[]\n" + |
13769 |
"----------\n"); |
13769 |
"----------\n"); |
13770 |
} |
13770 |
} |
Lines 14438-14451
Link Here
|
14438 |
"}\n" |
14438 |
"}\n" |
14439 |
}, |
14439 |
}, |
14440 |
"----------\n" + |
14440 |
"----------\n" + |
14441 |
"1. ERROR in X.java (at line 6)\r\n" + |
14441 |
"1. ERROR in X.java (at line 6)\n" + |
14442 |
" int i = l.get(0).length;\r\n" + |
14442 |
" int i = l.get(0).length;\n" + |
14443 |
" ^^^^^^\n" + |
14443 |
" ^^^^^^\n" + |
14444 |
"length cannot be resolved or is not a field\n" + |
14444 |
"length cannot be resolved or is not a field\n" + |
14445 |
"----------\n" + |
14445 |
"----------\n" + |
14446 |
"2. ERROR in X.java (at line 13)\r\n" + |
14446 |
"2. ERROR in X.java (at line 13)\n" + |
14447 |
" Serializable s2 = b ? l.get(0) : s;\r\n" + |
14447 |
" Serializable s2 = b ? l.get(0) : s;\n" + |
14448 |
" ^^\n" + |
14448 |
" ^^^^^^^^^^^^^^^^\n" + |
14449 |
"Type mismatch: cannot convert from Object to Serializable\n" + |
14449 |
"Type mismatch: cannot convert from Object to Serializable\n" + |
14450 |
"----------\n"); |
14450 |
"----------\n"); |
14451 |
} |
14451 |
} |
Lines 14624-14630
Link Here
|
14624 |
"----------\n" + |
14624 |
"----------\n" + |
14625 |
"3. ERROR in X.java (at line 6)\n" + |
14625 |
"3. ERROR in X.java (at line 6)\n" + |
14626 |
" Exception e = ex;\n" + |
14626 |
" Exception e = ex;\n" + |
14627 |
" ^\n" + |
14627 |
" ^^\n" + |
14628 |
"Type mismatch: cannot convert from Throwable to Exception\n" + |
14628 |
"Type mismatch: cannot convert from Throwable to Exception\n" + |
14629 |
"----------\n"); |
14629 |
"----------\n"); |
14630 |
} |
14630 |
} |
Lines 15036-15042
Link Here
|
15036 |
"----------\n" + |
15036 |
"----------\n" + |
15037 |
"1. ERROR in X.java (at line 4)\n" + |
15037 |
"1. ERROR in X.java (at line 4)\n" + |
15038 |
" T t = new ArrayList(); // BUG!!!\n" + |
15038 |
" T t = new ArrayList(); // BUG!!!\n" + |
15039 |
" ^\n" + |
15039 |
" ^^^^^^^^^^^^^^^\n" + |
15040 |
"Type mismatch: cannot convert from ArrayList to T\n" + |
15040 |
"Type mismatch: cannot convert from ArrayList to T\n" + |
15041 |
"----------\n"); |
15041 |
"----------\n"); |
15042 |
} |
15042 |
} |
Lines 15350-15364
Link Here
|
15350 |
" ^^^^^^^\n" + |
15350 |
" ^^^^^^^\n" + |
15351 |
"Unnecessary cast from null to T\n" + |
15351 |
"Unnecessary cast from null to T\n" + |
15352 |
"----------\n" + |
15352 |
"----------\n" + |
15353 |
"2. ERROR in X.java (at line 14)\n" + |
15353 |
"2. WARNING in X.java (at line 14)\n" + |
15354 |
" I2 v = b.willBe(I2.class);\n" + |
15354 |
" I2 v = b.willBe(I2.class);\n" + |
15355 |
" ^\n" + |
15355 |
" ^^^^^^^^^^^^^^^^^^\n" + |
15356 |
"Type mismatch: cannot convert from X.I1 to X.I2\n" + |
15356 |
"Type safety: The method willBe(Class) belongs to the raw type X.B. References to generic type X.B<C> should be parameterized\n" + |
15357 |
"----------\n" + |
15357 |
"----------\n" + |
15358 |
"3. WARNING in X.java (at line 14)\n" + |
15358 |
"3. ERROR in X.java (at line 14)\n" + |
15359 |
" I2 v = b.willBe(I2.class);\n" + |
15359 |
" I2 v = b.willBe(I2.class);\n" + |
15360 |
" ^^^^^^^^^^^^^^^^^^\n" + |
15360 |
" ^^^^^^^^^^^^^^^^^^\n" + |
15361 |
"Type safety: The method willBe(Class) belongs to the raw type X.B. References to generic type X.B<C> should be parameterized\n" + |
15361 |
"Type mismatch: cannot convert from X.I1 to X.I2\n" + |
15362 |
"----------\n"); |
15362 |
"----------\n"); |
15363 |
} |
15363 |
} |
15364 |
// javac incorrectly rejects it |
15364 |
// javac incorrectly rejects it |
Lines 16438-16444
Link Here
|
16438 |
"----------\n" + |
16438 |
"----------\n" + |
16439 |
"1. ERROR in X.java (at line 3)\n" + |
16439 |
"1. ERROR in X.java (at line 3)\n" + |
16440 |
" int[] ints = box.get();\n" + |
16440 |
" int[] ints = box.get();\n" + |
16441 |
" ^^^^\n" + |
16441 |
" ^^^^^^^^^\n" + |
16442 |
"Type mismatch: cannot convert from capture-of ? super int[] to int[]\n" + |
16442 |
"Type mismatch: cannot convert from capture-of ? super int[] to int[]\n" + |
16443 |
"----------\n"); |
16443 |
"----------\n"); |
16444 |
} |
16444 |
} |
Lines 16459-16465
Link Here
|
16459 |
"----------\n" + |
16459 |
"----------\n" + |
16460 |
"1. ERROR in X.java (at line 3)\n" + |
16460 |
"1. ERROR in X.java (at line 3)\n" + |
16461 |
" int[] ints = box.get();\n" + |
16461 |
" int[] ints = box.get();\n" + |
16462 |
" ^^^^\n" + |
16462 |
" ^^^^^^^^^\n" + |
16463 |
"Type mismatch: cannot convert from capture-of ? to int[]\n" + |
16463 |
"Type mismatch: cannot convert from capture-of ? to int[]\n" + |
16464 |
"----------\n"); |
16464 |
"----------\n"); |
16465 |
} |
16465 |
} |
Lines 16739-16750
Link Here
|
16739 |
" } \n" + |
16739 |
" } \n" + |
16740 |
"}\n", |
16740 |
"}\n", |
16741 |
}, |
16741 |
}, |
16742 |
"----------\n" + |
16742 |
"----------\n" + |
16743 |
"1. ERROR in X.java (at line 9)\n" + |
16743 |
"1. ERROR in X.java (at line 9)\n" + |
16744 |
" Class<? super Number> superSup2 = ext.getSuperclass();\n" + |
16744 |
" Class<? super Number> superSup2 = ext.getSuperclass();\n" + |
16745 |
" ^^^^^^^^^\n" + |
16745 |
" ^^^^^^^^^^^^^^^^^^^\n" + |
16746 |
"Type mismatch: cannot convert from Class<capture-of ? super capture-of ? extends Number> to Class<? super Number>\n" + |
16746 |
"Type mismatch: cannot convert from Class<capture-of ? super capture-of ? extends Number> to Class<? super Number>\n" + |
16747 |
"----------\n"); |
16747 |
"----------\n"); |
16748 |
} |
16748 |
} |
16749 |
|
16749 |
|
16750 |
//https://bugs.eclipse.org/bugs/show_bug.cgi?id=85281 - variation |
16750 |
//https://bugs.eclipse.org/bugs/show_bug.cgi?id=85281 - variation |
Lines 16826-16837
Link Here
|
16826 |
" }\n" + |
16826 |
" }\n" + |
16827 |
"}\n", |
16827 |
"}\n", |
16828 |
}, |
16828 |
}, |
16829 |
"----------\n" + |
16829 |
"----------\n" + |
16830 |
"1. ERROR in X.java (at line 11)\n" + |
16830 |
"1. ERROR in X.java (at line 11)\n" + |
16831 |
" Iterator<Entry<String, ?>> it = map.entrySet().iterator();\n" + |
16831 |
" Iterator<Entry<String, ?>> it = map.entrySet().iterator();\n" + |
16832 |
" ^^\n" + |
16832 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
16833 |
"Type mismatch: cannot convert from Iterator<Map.Entry<String,capture-of ?>> to Iterator<Map.Entry<String,?>>\n" + |
16833 |
"Type mismatch: cannot convert from Iterator<Map.Entry<String,capture-of ?>> to Iterator<Map.Entry<String,?>>\n" + |
16834 |
"----------\n"); |
16834 |
"----------\n"); |
16835 |
} |
16835 |
} |
16836 |
public void test595() { |
16836 |
public void test595() { |
16837 |
this.runNegativeTest( |
16837 |
this.runNegativeTest( |
Lines 16855-16866
Link Here
|
16855 |
" }\n" + |
16855 |
" }\n" + |
16856 |
"}\n", |
16856 |
"}\n", |
16857 |
}, |
16857 |
}, |
16858 |
"----------\n" + |
16858 |
"----------\n" + |
16859 |
"1. ERROR in X.java (at line 11)\n" + |
16859 |
"1. ERROR in X.java (at line 11)\n" + |
16860 |
" Iterator<Entry<? extends String, ?>> it = map.entrySet().iterator();\n" + |
16860 |
" Iterator<Entry<? extends String, ?>> it = map.entrySet().iterator();\n" + |
16861 |
" ^^\n" + |
16861 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
16862 |
"Type mismatch: cannot convert from Iterator<Map.Entry<capture-of ? extends String,capture-of ?>> to Iterator<Map.Entry<? extends String,?>>\n" + |
16862 |
"Type mismatch: cannot convert from Iterator<Map.Entry<capture-of ? extends String,capture-of ?>> to Iterator<Map.Entry<? extends String,?>>\n" + |
16863 |
"----------\n"); |
16863 |
"----------\n"); |
16864 |
} |
16864 |
} |
16865 |
public void test596() { |
16865 |
public void test596() { |
16866 |
this.runConformTest( |
16866 |
this.runConformTest( |
Lines 17730-17741
Link Here
|
17730 |
" }\n" + |
17730 |
" }\n" + |
17731 |
"}\n", |
17731 |
"}\n", |
17732 |
}, |
17732 |
}, |
17733 |
"----------\n" + |
17733 |
"----------\n" + |
17734 |
"1. ERROR in X.java (at line 9)\n" + |
17734 |
"1. ERROR in X.java (at line 9)\n" + |
17735 |
" String s = foo(l1, l2);\n" + |
17735 |
" String s = foo(l1, l2);\n" + |
17736 |
" ^\n" + |
17736 |
" ^^^^^^^^^^^\n" + |
17737 |
"Type mismatch: cannot convert from List<capture-of ? extends Object&Serializable&Comparable<?>> to String\n" + |
17737 |
"Type mismatch: cannot convert from List<capture-of ? extends Object&Serializable&Comparable<?>> to String\n" + |
17738 |
"----------\n"); |
17738 |
"----------\n"); |
17739 |
} |
17739 |
} |
17740 |
// check capture for conditional operator |
17740 |
// check capture for conditional operator |
17741 |
public void test628() { |
17741 |
public void test628() { |
Lines 17755-17766
Link Here
|
17755 |
" }\n" + |
17755 |
" }\n" + |
17756 |
"}\n", |
17756 |
"}\n", |
17757 |
}, |
17757 |
}, |
17758 |
"----------\n" + |
17758 |
"----------\n" + |
17759 |
"1. ERROR in X.java (at line 10)\n" + |
17759 |
"1. ERROR in X.java (at line 10)\n" + |
17760 |
" String s = l1 != null ? foo(l1, l2) : l3;\n" + |
17760 |
" String s = l1 != null ? foo(l1, l2) : l3;\n" + |
17761 |
" ^\n" + |
17761 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
17762 |
"Type mismatch: cannot convert from List<capture-of ? extends Object> to String\n" + |
17762 |
"Type mismatch: cannot convert from List<capture-of ? extends Object> to String\n" + |
17763 |
"----------\n"); |
17763 |
"----------\n"); |
17764 |
} |
17764 |
} |
17765 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=92556 |
17765 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=92556 |
17766 |
public void test629() { |
17766 |
public void test629() { |
Lines 18212-18226
Link Here
|
18212 |
" int field;\n" + |
18212 |
" int field;\n" + |
18213 |
"}\n", |
18213 |
"}\n", |
18214 |
}, |
18214 |
}, |
18215 |
"----------\n" + |
18215 |
"----------\n" + |
18216 |
"1. ERROR in X.java (at line 13)\n" + |
18216 |
"1. ERROR in X.java (at line 13)\n" + |
18217 |
" MyAnnotation typeAnnot = type.getAnnotation(MyAnnotation.class);\n" + |
18217 |
" MyAnnotation typeAnnot = type.getAnnotation(MyAnnotation.class);\n" + |
18218 |
" ^^^^^^^^^\n" + |
18218 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
18219 |
"Type mismatch: cannot convert from Annotation to MyAnnotation\n" + |
18219 |
"Type mismatch: cannot convert from Annotation to MyAnnotation\n" + |
18220 |
"----------\n" + |
18220 |
"----------\n" + |
18221 |
"2. ERROR in X.java (at line 15)\n" + |
18221 |
"2. ERROR in X.java (at line 15)\n" + |
18222 |
" MyAnnotation constrAnnot = constructor.getAnnotation(MyAnnotation.class);\n" + |
18222 |
" MyAnnotation constrAnnot = constructor.getAnnotation(MyAnnotation.class);\n" + |
18223 |
" ^^^^^^^^^^^\n" + |
18223 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
18224 |
"Type mismatch: cannot convert from Annotation to MyAnnotation\n" + |
18224 |
"Type mismatch: cannot convert from Annotation to MyAnnotation\n" + |
18225 |
"----------\n"); |
18225 |
"----------\n"); |
18226 |
} |
18226 |
} |
Lines 18284-18299
Link Here
|
18284 |
" }\n" + |
18284 |
" }\n" + |
18285 |
"}\n", |
18285 |
"}\n", |
18286 |
}, |
18286 |
}, |
18287 |
"----------\n" + |
18287 |
"----------\n" + |
18288 |
"1. ERROR in X.java (at line 8)\r\n" + |
18288 |
"1. WARNING in X.java (at line 8)\n" + |
18289 |
" String str = x.foo(\"hello\");\r\n" + |
18289 |
" String str = x.foo(\"hello\");\n" + |
18290 |
" ^^^\n" + |
|
|
18291 |
"Type mismatch: cannot convert from Object to String\n" + |
18292 |
"----------\n" + |
18293 |
"2. WARNING in X.java (at line 8)\r\n" + |
18294 |
" String str = x.foo(\"hello\");\r\n" + |
18295 |
" ^^^^^^^^^^^^^^\n" + |
18290 |
" ^^^^^^^^^^^^^^\n" + |
18296 |
"Type safety: The method foo(Object) belongs to the raw type X. References to generic type X<T> should be parameterized\n" + |
18291 |
"Type safety: The method foo(Object) belongs to the raw type X. References to generic type X<T> should be parameterized\n" + |
|
|
18292 |
"----------\n" + |
18293 |
"2. ERROR in X.java (at line 8)\n" + |
18294 |
" String str = x.foo(\"hello\");\n" + |
18295 |
" ^^^^^^^^^^^^^^\n" + |
18296 |
"Type mismatch: cannot convert from Object to String\n" + |
18297 |
"----------\n"); |
18297 |
"----------\n"); |
18298 |
} |
18298 |
} |
18299 |
public void _test645() { |
18299 |
public void _test645() { |
Lines 18348-18363
Link Here
|
18348 |
" }\n" + |
18348 |
" }\n" + |
18349 |
"}\n", |
18349 |
"}\n", |
18350 |
}, |
18350 |
}, |
18351 |
"----------\n" + |
18351 |
"----------\n" + |
18352 |
"1. ERROR in X.java (at line 4)\n" + |
18352 |
"1. WARNING in X.java (at line 4)\n" + |
18353 |
" X x = inner.setOuterT(new X());\n" + |
18353 |
" X x = inner.setOuterT(new X());\n" + |
18354 |
" ^\n" + |
18354 |
" ^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
18355 |
"Type mismatch: cannot convert from Object to X\n" + |
18355 |
"Type safety: The method setOuterT(Object) belongs to the raw type Outer.Inner. References to generic type Outer<T>.Inner should be parameterized\n" + |
18356 |
"----------\n" + |
18356 |
"----------\n" + |
18357 |
"2. WARNING in X.java (at line 4)\n" + |
18357 |
"2. ERROR in X.java (at line 4)\n" + |
18358 |
" X x = inner.setOuterT(new X());\n" + |
18358 |
" X x = inner.setOuterT(new X());\n" + |
18359 |
" ^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
18359 |
" ^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
18360 |
"Type safety: The method setOuterT(Object) belongs to the raw type Outer.Inner. References to generic type Outer<T>.Inner should be parameterized\n" + |
18360 |
"Type mismatch: cannot convert from Object to X\n" + |
18361 |
"----------\n" + |
18361 |
"----------\n" + |
18362 |
"3. WARNING in X.java (at line 6)\n" + |
18362 |
"3. WARNING in X.java (at line 6)\n" + |
18363 |
" Outer<String>.Inner innerS = inner;\n" + |
18363 |
" Outer<String>.Inner innerS = inner;\n" + |
Lines 18388-18403
Link Here
|
18388 |
" }\n" + |
18388 |
" }\n" + |
18389 |
"}\n", |
18389 |
"}\n", |
18390 |
}, |
18390 |
}, |
18391 |
"----------\n" + |
18391 |
"----------\n" + |
18392 |
"1. ERROR in X.java (at line 4)\n" + |
18392 |
"1. WARNING in X.java (at line 4)\n" + |
18393 |
" X x = inner.set(new X());\n" + |
18393 |
" X x = inner.set(new X());\n" + |
18394 |
" ^\n" + |
18394 |
" ^^^^^^^^^^^^^^^^^^\n" + |
18395 |
"Type mismatch: cannot convert from Object to X\n" + |
18395 |
"Type safety: The method set(Object) belongs to the raw type Outer.Inner. References to generic type Outer<T>.Inner<U> should be parameterized\n" + |
18396 |
"----------\n" + |
18396 |
"----------\n" + |
18397 |
"2. WARNING in X.java (at line 4)\n" + |
18397 |
"2. ERROR in X.java (at line 4)\n" + |
18398 |
" X x = inner.set(new X());\n" + |
18398 |
" X x = inner.set(new X());\n" + |
18399 |
" ^^^^^^^^^^^^^^^^^^\n" + |
18399 |
" ^^^^^^^^^^^^^^^^^^\n" + |
18400 |
"Type safety: The method set(Object) belongs to the raw type Outer.Inner. References to generic type Outer<T>.Inner<U> should be parameterized\n" + |
18400 |
"Type mismatch: cannot convert from Object to X\n" + |
18401 |
"----------\n" + |
18401 |
"----------\n" + |
18402 |
"3. ERROR in X.java (at line 6)\n" + |
18402 |
"3. ERROR in X.java (at line 6)\n" + |
18403 |
" Outer<String>.Inner innerS = inner;\n" + |
18403 |
" Outer<String>.Inner innerS = inner;\n" + |
Lines 19739-19745
Link Here
|
19739 |
"----------\n" + |
19739 |
"----------\n" + |
19740 |
"1. ERROR in X.java (at line 5)\n" + |
19740 |
"1. ERROR in X.java (at line 5)\n" + |
19741 |
" ArrayList<Number> arrayList = new ArrayList<Integer>(); // compile error\n" + |
19741 |
" ArrayList<Number> arrayList = new ArrayList<Integer>(); // compile error\n" + |
19742 |
" ^^^^^^^^^\n" + |
19742 |
" ^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
19743 |
"Type mismatch: cannot convert from ArrayList<Integer> to ArrayList<Number>\n" + |
19743 |
"Type mismatch: cannot convert from ArrayList<Integer> to ArrayList<Number>\n" + |
19744 |
"----------\n"); |
19744 |
"----------\n"); |
19745 |
} |
19745 |
} |
Lines 19888-19894
Link Here
|
19888 |
"----------\n" + |
19888 |
"----------\n" + |
19889 |
"1. ERROR in X.java (at line 6)\n" + |
19889 |
"1. ERROR in X.java (at line 6)\n" + |
19890 |
" X<String> x = foo(x1, x2);\n" + |
19890 |
" X<String> x = foo(x1, x2);\n" + |
19891 |
" ^\n" + |
19891 |
" ^^^^^^^^^^^\n" + |
19892 |
"Type mismatch: cannot convert from X<capture-of ? extends Object> to X<String>\n" + |
19892 |
"Type mismatch: cannot convert from X<capture-of ? extends Object> to X<String>\n" + |
19893 |
"----------\n"); |
19893 |
"----------\n"); |
19894 |
} |
19894 |
} |
Lines 19908-19914
Link Here
|
19908 |
"----------\n" + |
19908 |
"----------\n" + |
19909 |
"1. ERROR in X.java (at line 6)\n" + |
19909 |
"1. ERROR in X.java (at line 6)\n" + |
19910 |
" X<String> x = foo(x1, x2);\n" + |
19910 |
" X<String> x = foo(x1, x2);\n" + |
19911 |
" ^\n" + |
19911 |
" ^^^^^^^^^^^\n" + |
19912 |
"Type mismatch: cannot convert from X<capture-of ? extends Object> to X<String>\n" + |
19912 |
"Type mismatch: cannot convert from X<capture-of ? extends Object> to X<String>\n" + |
19913 |
"----------\n"); |
19913 |
"----------\n"); |
19914 |
} |
19914 |
} |
Lines 20501-20513
Link Here
|
20501 |
"class CC {}\n", |
20501 |
"class CC {}\n", |
20502 |
}, |
20502 |
}, |
20503 |
"----------\n" + |
20503 |
"----------\n" + |
20504 |
"1. ERROR in X.java (at line 4)\r\n" + |
20504 |
"1. ERROR in X.java (at line 4)\n" + |
20505 |
" AA<CC> res = bb.test();\r\n" + |
20505 |
" AA<CC> res = bb.test();\n" + |
20506 |
" ^^^^\n" + |
20506 |
" ^^^^\n" + |
20507 |
"The method test() is ambiguous for the type BB\n" + |
20507 |
"The method test() is ambiguous for the type BB\n" + |
20508 |
"----------\n" + |
20508 |
"----------\n" + |
20509 |
"2. ERROR in X.java (at line 5)\r\n" + |
20509 |
"2. ERROR in X.java (at line 5)\n" + |
20510 |
" BB res2 = bb.test();\r\n" + |
20510 |
" BB res2 = bb.test();\n" + |
20511 |
" ^^^^\n" + |
20511 |
" ^^^^\n" + |
20512 |
"The method test() is ambiguous for the type BB\n" + |
20512 |
"The method test() is ambiguous for the type BB\n" + |
20513 |
"----------\n" |
20513 |
"----------\n" |
Lines 20531-20544
Link Here
|
20531 |
"class CC {}\n", |
20531 |
"class CC {}\n", |
20532 |
}, |
20532 |
}, |
20533 |
"----------\n" + |
20533 |
"----------\n" + |
20534 |
"1. ERROR in X.java (at line 4)\r\n" + |
20534 |
"1. ERROR in X.java (at line 4)\n" + |
20535 |
" AA<CC> res = bb.test();\r\n" + |
20535 |
" AA<CC> res = bb.test();\n" + |
20536 |
" ^^^\n" + |
20536 |
" ^^^^^^^^^\n" + |
20537 |
"Type mismatch: cannot convert from AA<Object> to AA<CC>\n" + |
20537 |
"Type mismatch: cannot convert from AA<Object> to AA<CC>\n" + |
20538 |
"----------\n" + |
20538 |
"----------\n" + |
20539 |
"2. ERROR in X.java (at line 5)\r\n" + |
20539 |
"2. ERROR in X.java (at line 5)\n" + |
20540 |
" BB res2 = bb.test();\r\n" + |
20540 |
" BB res2 = bb.test();\n" + |
20541 |
" ^^^^\n" + |
20541 |
" ^^^^^^^^^\n" + |
20542 |
"Type mismatch: cannot convert from AA<Object> to BB\n" + |
20542 |
"Type mismatch: cannot convert from AA<Object> to BB\n" + |
20543 |
"----------\n" |
20543 |
"----------\n" |
20544 |
// incompatible types on both assignments |
20544 |
// incompatible types on both assignments |
Lines 20780-20786
Link Here
|
20780 |
"----------\n" + |
20780 |
"----------\n" + |
20781 |
"1. ERROR in X.java (at line 3)\n" + |
20781 |
"1. ERROR in X.java (at line 3)\n" + |
20782 |
" Comparable<String> c = (java.util.List)bar(5, 5.0);\n" + |
20782 |
" Comparable<String> c = (java.util.List)bar(5, 5.0);\n" + |
20783 |
" ^\n" + |
20783 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
20784 |
"Type mismatch: cannot convert from List to Comparable<String>\n" + |
20784 |
"Type mismatch: cannot convert from List to Comparable<String>\n" + |
20785 |
"----------\n"); |
20785 |
"----------\n"); |
20786 |
} |
20786 |
} |
Lines 21580-21586
Link Here
|
21580 |
"----------\n" + |
21580 |
"----------\n" + |
21581 |
"1. ERROR in X.java (at line 3)\n" + |
21581 |
"1. ERROR in X.java (at line 3)\n" + |
21582 |
" String s = java.util.Arrays.asList(3, 3.1);\n" + |
21582 |
" String s = java.util.Arrays.asList(3, 3.1);\n" + |
21583 |
" ^\n" + |
21583 |
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + |
21584 |
"Type mismatch: cannot convert from List<Number&Comparable<?>> to String\n" + |
21584 |
"Type mismatch: cannot convert from List<Number&Comparable<?>> to String\n" + |
21585 |
"----------\n"); |
21585 |
"----------\n"); |
21586 |
} |
21586 |
} |
Lines 21633-21639
Link Here
|
21633 |
"----------\n" + |
21633 |
"----------\n" + |
21634 |
"1. ERROR in X.java (at line 6)\n" + |
21634 |
"1. ERROR in X.java (at line 6)\n" + |
21635 |
" String s = x.get();\n" + |
21635 |
" String s = x.get();\n" + |
21636 |
" ^\n" + |
21636 |
" ^^^^^^^\n" + |
21637 |
"Type mismatch: cannot convert from X to String\n" + |
21637 |
"Type mismatch: cannot convert from X to String\n" + |
21638 |
"----------\n"); |
21638 |
"----------\n"); |
21639 |
} |
21639 |
} |
Lines 21768-21774
Link Here
|
21768 |
"----------\n" + |
21768 |
"----------\n" + |
21769 |
"1. ERROR in X.java (at line 15)\n" + |
21769 |
"1. ERROR in X.java (at line 15)\n" + |
21770 |
" bugElement be = bc.getData(); //<< here\n" + |
21770 |
" bugElement be = bc.getData(); //<< here\n" + |
21771 |
" ^^\n" + |
21771 |
" ^^^^^^^^^^^^\n" + |
21772 |
"Type mismatch: cannot convert from Object to bugElement\n" + |
21772 |
"Type mismatch: cannot convert from Object to bugElement\n" + |
21773 |
"----------\n"); |
21773 |
"----------\n"); |
21774 |
} |
21774 |
} |
Lines 21927-21933
Link Here
|
21927 |
"----------\n" + |
21927 |
"----------\n" + |
21928 |
"1. ERROR in X.java (at line 16)\n" + |
21928 |
"1. ERROR in X.java (at line 16)\n" + |
21929 |
" X<Integer> x2 = itself(make());\n" + |
21929 |
" X<Integer> x2 = itself(make());\n" + |
21930 |
" ^^\n" + |
21930 |
" ^^^^^^^^^^^^^^\n" + |
21931 |
"Type mismatch: cannot convert from X<Object> to X<Integer>\n" + |
21931 |
"Type mismatch: cannot convert from X<Object> to X<Integer>\n" + |
21932 |
"----------\n" + |
21932 |
"----------\n" + |
21933 |
"2. ERROR in X.java (at line 19)\n" + |
21933 |
"2. ERROR in X.java (at line 19)\n" + |