changeset 56786:7cb39e5d5420 patterns

Post-merge fixes.
author jlahoda
date Fri, 14 Jun 2019 08:37:37 +0200
parents ca4977a37264
children 892a23eb13ce 91e02ad382d2
files src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransSwitches.java src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java
diffstat 2 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransSwitches.java	Fri Jun 14 07:42:33 2019 +0200
+++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransSwitches.java	Fri Jun 14 08:37:37 2019 +0200
@@ -46,6 +46,7 @@
 import com.sun.tools.javac.tree.JCTree.JCSwitch;
 import com.sun.tools.javac.tree.JCTree.JCSwitchExpression;
 import com.sun.tools.javac.tree.JCTree.JCThrow;
+import com.sun.tools.javac.tree.JCTree.JCYield;
 import com.sun.tools.javac.tree.TreeInfo;
 import com.sun.tools.javac.tree.TreeMaker;
 import com.sun.tools.javac.tree.TreeTranslator;
@@ -157,7 +158,7 @@
                 @Override
                 public void visitMethodDef(JCMethodDecl tree) {}
                 @Override
-                public void visitBreak(JCBreak tree) {
+                public void visitYield(JCYield tree) {
                     if (tree.target == switchExpr) {
                         tree.target = switchStatement;
                         JCExpressionStatement assignment =
--- a/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java	Fri Jun 14 07:42:33 2019 +0200
+++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java	Fri Jun 14 08:37:37 2019 +0200
@@ -942,8 +942,8 @@
                 int patternPos = token.pos;
                 JCTree pattern = parseType(true);
                 if (token.kind == IDENTIFIER) {
-                    if (pattern.hasTag(IDENT) && isRestrictedLocalVarTypeName((JCIdent) pattern, keepLineMap)) {
-                        reportSyntaxError(pos, Errors.VarNotAllowed);
+                    if (pattern.hasTag(IDENT) && isRestrictedTypeName(((JCIdent) pattern).name, pattern.pos, true)) {
+                        reportSyntaxError(pos, Errors.RestrictedTypeNotAllowed(((JCIdent) pattern).name, ((JCIdent) pattern).name == names.var ? Source.JDK10 : Source.JDK13));
                         pattern = null;
                     }
                     pattern = toP(F.at(patternPos).BindingPattern(ident(), pattern));