Bug 28934 - Using assert keyword in methods of nested classes causes
Summary: Using assert keyword in methods of nested classes causes
Status: RESOLVED DUPLICATE of bug 28750
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.1   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: 2.1 M5   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 28801 38043 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-12-31 16:27 EST by Paul Jones CLA
Modified: 2003-05-23 11:24 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Jones CLA 2002-12-31 16:27:02 EST
When Java compiler is set to level 1.4 (so that the new assert statements can 
be used) and an assert is used inside a nested class, an internal eclipse 
exception is thrown whenever the file is compiled.

public class Bug {
    protected class Nested {
        void foo(int i) {
            assert (i > 0);
            System.out.println(i);
        }
    }
}

Error messages:

Save Failed:null

(or)

Save could not be completed.

Reason: Errors during build

Details: java.lang.NullPointerException encountered while running 
org.eclipse.jdt.internal.core.builder.JavaBuilder.


Detailed Stack Trace:

Internal compiler error
java.lang.NullPointerException
	at org.eclipse.jdt.internal.compiler.ClassFile.addFieldInfo
(ClassFile.java:434)
	at org.eclipse.jdt.internal.compiler.ClassFile.addFieldInfos
(ClassFile.java:579)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:694)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:762)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:709)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:770)
	at 
org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.generateCode
(CompilationUnitDeclaration.java:158)
	at org.eclipse.jdt.internal.compiler.Compiler.process
(Compiler.java:543)
	at org.eclipse.jdt.internal.compiler.Compiler.compile
(Compiler.java:337)
	at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:194)
	at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:144)
	at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build
(IncrementalImageBuilder.java:106)
	at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas
(JavaBuilder.java:190)
	at org.eclipse.jdt.internal.core.builder.JavaBuilder.build
(JavaBuilder.java:118)
	at org.eclipse.core.internal.events.BuildManager$2.run
(BuildManager.java:384)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:852)
	at org.eclipse.core.runtime.Platform.run(Platform.java:413)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:120)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:176)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:186)
	at org.eclipse.core.internal.events.BuildManager$1.run
(BuildManager.java:146)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:852)
	at org.eclipse.core.runtime.Platform.run(Platform.java:413)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:160)
	at org.eclipse.core.internal.events.BuildManager.build
(BuildManager.java:211)
	at org.eclipse.core.internal.resources.Workspace.endOperation
(Workspace.java:861)
	at org.eclipse.core.internal.resources.Workspace.run
(Workspace.java:1569)
	at org.eclipse.ui.actions.WorkspaceModifyOperation.run
(WorkspaceModifyOperation.java:79)
	at org.eclipse.ui.texteditor.AbstractTextEditor.performSaveOperation
(AbstractTextEditor.java:2790)
	at 
org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.performSaveOperati
on(CompilationUnitEditor.java:849)
	at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.doSave
(CompilationUnitEditor.java:913)
	at org.eclipse.ui.internal.EditorManager$11.run
(EditorManager.java:1032)
	at org.eclipse.ui.internal.EditorManager$8.run(EditorManager.java:901)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread
(ModalContext.java:296)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:246)
	at org.eclipse.jface.window.ApplicationWindow$1.run
(ApplicationWindow.java:432)
	at org.eclipse.swt.custom.BusyIndicator.showWhile
(BusyIndicator.java:65)
	at org.eclipse.jface.window.ApplicationWindow.run
(ApplicationWindow.java:429)
	at org.eclipse.ui.internal.WorkbenchWindow.run
(WorkbenchWindow.java:1174)
	at org.eclipse.ui.internal.EditorManager.runProgressMonitorOperation
(EditorManager.java:907)
	at org.eclipse.ui.internal.EditorManager.saveEditor
(EditorManager.java:1037)
	at org.eclipse.ui.internal.WorkbenchPage.saveEditor
(WorkbenchPage.java:2143)
	at org.eclipse.ui.internal.SaveAction.run(SaveAction.java:30)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:769)
	at org.eclipse.ui.internal.WWinKeyBindingService.invoke
(WWinKeyBindingService.java:139)
	at org.eclipse.ui.internal.WWinKeyBindingService.pressed
(WWinKeyBindingService.java:120)
	at org.eclipse.ui.internal.WWinKeyBindingService$6.widgetSelected
(WWinKeyBindingService.java:376)
	at org.eclipse.ui.internal.AcceleratorMenu$2.handleEvent
(AcceleratorMenu.java:55)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:77)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:825)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1692)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1410)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1446)
	at org.eclipse.ui.internal.Workbench.run(Workbench.java:1429)
	at org.eclipse.core.internal.boot.InternalBootLoader.run
(InternalBootLoader.java:845)
	at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:247)
	at org.eclipse.core.launcher.Main.run(Main.java:703)
	at org.eclipse.core.launcher.Main.main(Main.java:539)
Comment 1 Kent Johnson CLA 2003-01-02 12:21:19 EST
*** Bug 28801 has been marked as a duplicate of this bug. ***
Comment 2 Olivier Thomann CLA 2003-01-02 19:33:41 EST

*** This bug has been marked as a duplicate of 28750 ***
Comment 3 Philipe Mulet CLA 2003-05-23 11:24:03 EDT
*** Bug 38043 has been marked as a duplicate of this bug. ***