Community
Participate
Working Groups
Build Identifier: typing: switch(i) { case 0: break; case 1: break; default: { //asdf } } leads to the following internal error: eclipse.buildId=I20110613-1736 java.version=1.6.0_22 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.cpp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.cpp.product Error Mon Jul 25 11:19:51 CEST 2011 Internal Error java.lang.ArrayIndexOutOfBoundsException: -1 at org.eclipse.cdt.codan.internal.checkers.CaseBreakChecker$SwitchFindingVisitor.isFallThroughStamement(CaseBreakChecker.java:142) at org.eclipse.cdt.codan.internal.checkers.CaseBreakChecker$SwitchFindingVisitor.visit(CaseBreakChecker.java:102) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTSwitchStatement.accept(CPPASTSwitchStatement.java:95) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTCompoundStatement.accept(CPPASTCompoundStatement.java:79) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionDefinition.accept(CPPASTFunctionDefinition.java:187) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNamespaceDefinition.accept(CPPASTNamespaceDefinition.java:129) at org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit.accept(ASTTranslationUnit.java:279) at org.eclipse.cdt.codan.internal.checkers.CaseBreakChecker.processAst(CaseBreakChecker.java:214) at org.eclipse.cdt.codan.core.cxx.model.AbstractIndexAstChecker.processModel(AbstractIndexAstChecker.java:103) at org.eclipse.cdt.codan.internal.core.CodanBuilder.processResource(CodanBuilder.java:149) at org.eclipse.cdt.codan.internal.core.CodanBuilder.runInEditor(CodanBuilder.java:218) at org.eclipse.cdt.codan.core.cxx.internal.model.CxxCodanReconciler.reconciledAst(CxxCodanReconciler.java:38) at org.eclipse.cdt.codan.internal.ui.cxx.CodanCReconciler.reconciled(CodanCReconciler.java:81) at org.eclipse.cdt.internal.ui.editor.CEditor.reconciled(CEditor.java:3145) at org.eclipse.cdt.internal.ui.text.CReconcilingStrategy.reconcile(CReconcilingStrategy.java:108) at org.eclipse.cdt.internal.ui.text.CReconcilingStrategy.reconcile(CReconcilingStrategy.java:73) at org.eclipse.cdt.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:84) at org.eclipse.cdt.internal.ui.text.CCompositeReconcilingStrategy.reconcile(CCompositeReconcilingStrategy.java:90) at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:77) at org.eclipse.cdt.internal.ui.text.CReconciler.process(CReconciler.java:408) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:206) Reproducible: Always
Created attachment 200298 [details] Internal error isFallThroughStatement patch
Thank you for reporting the bug. Fixed in 8.0.1 and master > 20110725.
*** cdt git genie on behalf of 352983 *** Bug 352983 - internal error in switch isFallThroughStatement [*] http://git.eclipse.org/c/cdt/org.eclipse.cdt.git/commit/?id=74ecb38ea31e7ac24a73f060477ade5300f04aa8
*** cdt git genie on behalf of 352983 *** Bug 352983 - internal error in switch isFallThroughStatement [*] http://git.eclipse.org/c/cdt/org.eclipse.cdt.git/commit/?id=fe6f2ae68f807c253d257dcb5906d2806f6b9673