[ https://issues.apache.org/jira/browse/NETBEANS-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated NETBEANS-1728: ------------------------------------- Labels: NB-JDK12 pull-request-available (was: NB-JDK12) > ClassCastException in switch expression > ---------------------------------------- > > Key: NETBEANS-1728 > URL: https://issues.apache.org/jira/browse/NETBEANS-1728 > Project: NetBeans > Issue Type: Bug > Reporter: vikas kumar prabhakar > Assignee: Sarvesh Kesharwani > Priority: Major > Labels: NB-JDK12, pull-request-available > > Exception occur "java.lang.ClassCastException" with following code snippet: > int i=10; > final String val = > switch (i) > { case 1 : break "one"; case 2 -> "two"; } > ; > > Exception logs: > java.lang.ClassCastException: class > com.sun.tools.javac.tree.JCTree$JCSwitchExpression cannot be cast to class > com.sun.source.tree.StatementTree > (com.sun.tools.javac.tree.JCTree$JCSwitchExpression and > com.sun.source.tree.StatementTree are in module jdk.compiler of loader 'app') > at > org.netbeans.api.java.source.TreeUtilities.getBreakContinueTarget(TreeUtilities.java:1358) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitBreak(NPECheck.java:1252) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitBreak(NPECheck.java:545) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBreak.accept(JCTree.java:1575) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:106) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitCase(TreeScanner.java:372) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCCase.accept(JCTree.java:1293) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:106) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitSwitchExpression(TreeScanner.java:354) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCSwitchExpression.accept(JCTree.java:1323) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitVariable(NPECheck.java:704) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitVariable(NPECheck.java:545) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:980) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91) > at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:106) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:249) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1038) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:207) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitMethod(NPECheck.java:1129) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitMethod(NPECheck.java:545) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:904) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91) > at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:106) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:188) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:814) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:545) > at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:106) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) > at > jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114) > at > jdk.compiler/com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:145) > at > jdk.compiler/com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:597) > at > jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82) > at > org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) > at > org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:624) > at > org.netbeans.modules.java.hints.bugs.NPECheck.computeExpressionsState(NPECheck.java:502) > at org.netbeans.modules.java.hints.bugs.NPECheck.assignment(NPECheck.java:91) > at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:566) > [catch] at > org.netbeans.modules.java.hints.providers.code.CodeHintProviderImpl$WorkerImpl.createErrors(CodeHintProviderImpl.java:317) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.runHint(HintsInvoker.java:798) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.doComputeHints(HintsInvoker.java:563) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHintsImpl(HintsInvoker.java:283) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:228) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:193) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:166) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:128) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsTask.run(HintsTask.java:114) > at > org.netbeans.modules.java.hints.spiimpl.hints.HintsTask.run(HintsTask.java:65) > at > org.netbeans.modules.java.source.JavaSourceAccessor$CancelableTaskWrapper.run(JavaSourceAccessor.java:273) > at > org.netbeans.modules.parsing.impl.TaskProcessor.callParserResultTask(TaskProcessor.java:561) > at > org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.run(TaskProcessor.java:786) > at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279) > at > org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.execute(TaskProcessor.java:702) > at > org.netbeans.modules.parsing.impl.TaskProcessor$CompilationJob.run(TaskProcessor.java:663) > at > java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) > at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) > at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418) > at > org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45) > at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278) > at > org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033) > -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists