[java] merges language level name and JDK version description

This commit is contained in:
Roman Shevchenko
2018-01-18 13:54:45 +01:00
parent c86688b5e6
commit 9f05380c48
10 changed files with 35 additions and 39 deletions
@@ -6,7 +6,7 @@ class UnsupportedFeatures {
for (String s : args) { System.out.println(s); }
List<String> list =
new ArrayList<error descr="Diamond types are not supported at language level '1.6'"><></error>();
new ArrayList<error descr="Diamond types are not supported at language level '6'"><></error>();
for (String s : list) {}
Arrays.asList("");
@@ -14,22 +14,22 @@ class UnsupportedFeatures {
boolean b1 = Boolean.TRUE;
try { Reader r = new FileReader("/dev/null"); }
catch (<error descr="Multi-catches are not supported at language level '1.6'">FileNotFoundException | IOException e</error>) { e.printStackTrace(); }
catch (<error descr="Multi-catches are not supported at language level '6'">FileNotFoundException | IOException e</error>) { e.printStackTrace(); }
try <error descr="Try-with-resources are not supported at language level '1.6'">(Reader r = new FileReader("/dev/null"))</error> { }
try <error descr="Try-with-resources are not supported at language level '6'">(Reader r = new FileReader("/dev/null"))</error> { }
I i1 = <error descr="Method references are not supported at language level '1.6'">UnsupportedFeatures::m</error>;
I i2 = <error descr="Lambda expressions are not supported at language level '1.6'">() -> { }</error>;
I i1 = <error descr="Method references are not supported at language level '6'">UnsupportedFeatures::m</error>;
I i2 = <error descr="Lambda expressions are not supported at language level '6'">() -> { }</error>;
switch (<error descr="Incompatible types. Found: 'java.lang.String', required: 'byte, char, short or int'">list.get(0)</error>) {
case "foo": break;
}
}
void f(<error descr="Receiver parameters are not supported at language level '1.6'">Object this</error>) { }
void f(<error descr="Receiver parameters are not supported at language level '6'">Object this</error>) { }
interface I {
<error descr="Extension methods are not supported at language level '1.6'">default void m() { }</error>
<error descr="Extension methods are not supported at language level '1.6'">static void m() { }</error>
<error descr="Extension methods are not supported at language level '6'">default void m() { }</error>
<error descr="Extension methods are not supported at language level '6'">static void m() { }</error>
}
}
@@ -1,14 +1,14 @@
class Test {
interface I {
<error descr="Extension methods are not supported at language level '1.7'">static void foo() {}</error>
<error descr="Extension methods are not supported at language level '7'">static void foo() {}</error>
}
abstract static class IImpl implements I {}
interface I2 extends I {}
{
I.<error descr="Static interface method calls are not supported at language level '1.7'">foo</error>();
IImpl.<error descr="Static interface method calls are not supported at language level '1.7'">foo</error>();
I2.<error descr="Static interface method calls are not supported at language level '1.7'">foo</error>();
I.<error descr="Static interface method calls are not supported at language level '7'">foo</error>();
IImpl.<error descr="Static interface method calls are not supported at language level '7'">foo</error>();
I2.<error descr="Static interface method calls are not supported at language level '7'">foo</error>();
}
}
@@ -2,6 +2,6 @@ import java.io.Serializable;
class IntersectionTypeCast {
void m(Runnable r) {
Object o = <error descr="Intersection types in casts are not supported at language level '1.7'">(Runnable & Serializable)r</error>;
Object o = <error descr="Intersection types in casts are not supported at language level '7'">(Runnable & Serializable)r</error>;
}
}
@@ -1,3 +1,3 @@
<error descr="Modules are not supported at language level '1.8'">module M {
<error descr="Modules are not supported at language level '8'">module M {
requires A;
}</error>
@@ -3,6 +3,6 @@ import java.io.*;
class UnsupportedFeatures {
void m() throws Exception {
Reader r1 = new FileReader("/dev/null");
try (<error descr="Resource references are not supported at language level '1.8'">r1</error>; Reader r2 = new FileReader("/dev/null")) { }
try (<error descr="Resource references are not supported at language level '8'">r1</error>; Reader r2 = new FileReader("/dev/null")) { }
}
}
@@ -15,7 +15,7 @@ abstract class C {
void notWrong() { }
}
class B extends <error descr="Type annotations are not supported at language level '1.7'">@Deprecated</error> Object { }
class B extends <error descr="Type annotations are not supported at language level '7'">@Deprecated</error> Object { }
enum E {
@Anno E1
@@ -24,7 +24,7 @@ enum E {
interface I {
@<error descr="Duplicate annotation">Anno</error>
public @<error descr="Duplicate annotation">Anno</error>
Collection<<error descr="Type annotations are not supported at language level '1.7'">@Anno</error> String>
Collection<<error descr="Type annotations are not supported at language level '7'">@Anno</error> String>
method(@<error descr="Duplicate annotation">Anno</error> @<error descr="Duplicate annotation">Anno</error> Object o);
}