< prev index next >
test/langtools/tools/javac/versions/Versions.java
Print this page
@@ -272,10 +272,12 @@
pass(newargs);
newargs[asize] = "New18.java";
pass(newargs);
newargs[asize] = "New110.java";
pass(newargs);
+ newargs[asize] = "New111.java";
+ fail(newargs);
}
protected void checksrc111(String... args) {
printargs("checksrc111", args);
int asize = args.length;
@@ -287,10 +289,12 @@
pass(newargs);
newargs[asize] = "New110.java";
pass(newargs);
newargs[asize] = "New111.java";
pass(newargs);
+ newargs[asize] = "New114.java";
+ fail(newargs);
}
protected void checksrc112(String... args) {
printargs("checksrc112", args);
checksrc111(args);
@@ -301,16 +305,28 @@
checksrc111(args);
}
protected void checksrc114(String... args) {
printargs("checksrc114", args);
- checksrc111(args);
+ int asize = args.length;
+ String[] newargs = new String[asize+1];
+ System.arraycopy(args, 0, newargs,0 , asize);
+ newargs[asize] = "New17.java";
+ pass(newargs);
+ newargs[asize] = "New18.java";
+ pass(newargs);
+ newargs[asize] = "New110.java";
+ pass(newargs);
+ newargs[asize] = "New111.java";
+ pass(newargs);
+ newargs[asize] = "New114.java";
+ pass(newargs);
}
protected void checksrc115(String... args) {
printargs("checksrc115", args);
- checksrc111(args);
+ checksrc114(args);
}
protected void pass(String... args) {
printargs("pass", args);
@@ -421,47 +437,74 @@
/*
* Create a file with a new feature in 1.7, not in 1.6 : "<>"
*/
writeSourceFile("New17.java",
- "import java.util.List;\n" +
- "import java.util.ArrayList;\n" +
- "class New17 { List<String> s = new ArrayList<>(); }\n"
+ """
+ import java.util.List;
+ import java.util.ArrayList;
+ class New17 { List<String> s = new ArrayList<>(); }
+ """
);
/*
* Create a file with a new feature in 1.8, not in 1.7 : lambda
*/
writeSourceFile("New18.java",
- "public class New18 { \n" +
- " void m() { \n" +
- " new Thread(() -> { }); \n" +
- " } \n" +
- "} \n"
+ """
+ public class New18 {
+ void m() {
+ new Thread(() -> { });
+ }
+ }
+ """
);
/*
* Create a file with a new feature in 1.10, not in 1.9 : var
*/
writeSourceFile("New110.java",
- "public class New110 { \n" +
- " void m() { \n" +
- " var tmp = new Thread(() -> { }); \n" +
- " } \n" +
- "} \n"
+ """
+ public class New110 {
+ void m() {
+ var tmp = new Thread(() -> { });
+ }
+ }
+ """
);
/*
* Create a file with a new feature in 11, not in 10 : var for lambda parameters
*/
writeSourceFile("New111.java",
- "public class New111 { \n" +
- " static java.util.function.Function<String,String> f = (var x) -> x.substring(0);\n" +
- " void m(String name) { \n" +
- " var tmp = new Thread(() -> { }, f.apply(name)); \n" +
- " } \n" +
- "} \n"
+ """
+ public class New111 {
+ static java.util.function.Function<String,String> f = (var x) -> x.substring(0);
+ void m(String name) {
+ var tmp = new Thread(() -> { }, f.apply(name));
+ }
+ }
+ """
+ );
+
+ /*
+ * Create a file with a new feature in 14, not in 13 : switch expressions
+ */
+ writeSourceFile("New114.java",
+ """
+ public class New114 {
+ static {
+ int i = 5;
+ System.out.println(
+ switch(i) {
+ case 0 -> false;
+ default -> true;
+ }
+ );
+ }
+ }
+ """
);
}
protected boolean checkClassFileVersion
(String filename,String classVersionNumber) {
< prev index next >