When I modified the package name parsing code to use the DynamicJava parser, I apparently didn't catch TokenMgrErrors. (The bigger problem here is that the parser can't handle annotations, and especially annotations on package statements.)
Code snippet:
/** (comment) */
@SuppressWarnings("unchecked")
public static <T> Option<T> none() {
...
koala.dynamicjava.parser.TokenMgrError: Lexical error at line 5, column 3. Encountered: "@" (64), after : "@"
at koala.dynamicjava.parser.ParserTokenManager.getNextToken(ParserTokenManager.java:1805)
at koala.dynamicjava.parser.Parser.jj_consume_token(Parser.java:12392)
at koala.dynamicjava.parser.Parser.packageDeclaration(Parser.java:1018)
at edu.rice.cs.drjava.model.definitions.DefinitionsDocument.getPackageName(DefinitionsDocument.java:985)
at edu.rice.cs.drjava.model.AbstractGlobalModel$ConcreteOpenDefDoc$2.make(AbstractGlobalModel.java:3044)
at edu.rice.cs.drjava.model.cache.DocumentCache$DocManager.makeDocument(DocumentCache.java:178)
at edu.rice.cs.drjava.model.cache.DocumentCache$DocManager.getDocument(DocumentCache.java:202)
at edu.rice.cs.drjava.model.AbstractGlobalModel$ConcreteOpenDefDoc.getDocument(AbstractGlobalModel.java:2793)
at edu.rice.cs.drjava.model.AbstractGlobalModel$ConcreteOpenDefDoc.getPackageNameFromDocument(AbstractGlobalModel.java:2898)
at edu.rice.cs.drjava.model.AbstractGlobalModel._rawOpenFile(AbstractGlobalModel.java:4014)
at edu.rice.cs.drjava.model.AbstractGlobalModel._openFiles(AbstractGlobalModel.java:1135)
at edu.rice.cs.drjava.model.AbstractGlobalModel.openFilesHelper(AbstractGlobalModel.java:1112)
at edu.rice.cs.drjava.model.AbstractGlobalModel.openFiles(AbstractGlobalModel.java:1098)
at edu.rice.cs.drjava.ui.MainFrame.open(MainFrame.java:3727)
at edu.rice.cs.drjava.ui.MainFrame._openFileOrProject(MainFrame.java:3547)
at edu.rice.cs.drjava.ui.MainFrame.access$1800(MainFrame.java:108)
at edu.rice.cs.drjava.ui.MainFrame$18.actionPerformed(MainFrame.java:443)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2202)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231)
at java.awt.Component.processMouseEvent(Component.java:5554)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5319)
at java.awt.Container.processEvent(Container.java:2010)
at java.awt.Component.dispatchEventImpl(Component.java:4021)
at java.awt.Container.dispatchEventImpl(Container.java:2068)
at java.awt.Component.dispatchEvent(Component.java:3869)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3936)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
at java.awt.Container.dispatchEventImpl(Container.java:2054)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3869)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
System Properties:
DrJava Version 20070305-1553
drjava.debug.port = 53839
java.runtime.name = Java(TM) 2 Runtime Environment, Standard Edition
sun.boot.library.path = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Libraries
java.vm.version = 1.5.0_07-87
awt.nativeDoubleBuffering = true
gopherProxySet = false
java.vm.vendor = "Apple Computer, Inc."
java.vendor.url = http://apple.com/
path.separator = :
java.vm.name = Java HotSpot(TM) Client VM
file.encoding.pkg = sun.io
user.country = US
sun.os.patch.level = unknown
java.vm.specification.name = Java Virtual Machine Specification
user.dir = <anonymized user.dir>
java.runtime.version = 1.5.0_07-164
java.awt.graphicsenv = apple.awt.CGraphicsEnvironment
java.endorsed.dirs = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/endorsed
os.arch = ppc
edu.rice.cs.drjava.icon = <anonymized user.dir>/DrJava-20070305.app/Contents/Resources/DrJava.icns
java.io.tmpdir = /tmp
line.separator = "\u000a"
java.vm.specification.vendor = Sun Microsystems Inc.
os.name = Mac OS X
apple.laf.useScreenMenuBar = true
sun.jnu.encoding = MacRoman
java.library.path = <anonymized user.dir>/DrJava-20070305.app/Contents/Resources/Java:/System/Library/PrivateFrameworks/JavaApplicationLauncher.framework/Resources:.:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
java.specification.name = Java Platform API Specification
java.class.version = 49.0
sun.management.compiler = HotSpot Client Compiler
os.version = 10.4.8
user.home = <anonymized user.home>
user.timezone = America/Chicago
java.awt.printerjob = apple.awt.CPrinterJob
file.encoding = MacRoman
java.specification.version = 1.5
java.class.path = <anonymized user.dir>/DrJava-20070305.app/Contents/Resources/Java/drjava.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar
user.name = <anonymized user.name>
apple.awt.graphics.UseQuartz = true
java.vm.specification.version = 1.0
java.home = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
sun.arch.data.model = 32
user.language = en
java.specification.vendor = Sun Microsystems Inc.
awt.toolkit = apple.awt.CToolkit
java.vm.info = mixed mode, sharing
java.version = 1.5.0_07
java.ext.dirs = /Library/Java/Extensions:/System/Library/Java/Extensions:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext
sun.boot.class.path = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/sunrsasign.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/charsets.jar:/System/Library/PrivateFrameworks/JavaApplicationLauncher.framework/Resources/LauncherSupport.jar
java.vendor = Apple Computer, Inc.
file.separator = /
java.vendor.url.bug = http://developer.apple.com/java/
sun.io.unicode.encoding = UnicodeBig
sun.cpu.endian = big
java.rmi.server.hostname = 127.0.0.1
mrj.version = 1040.1.5.0_07-164
sun.awt.exception.handler = edu.rice.cs.drjava.ui.DrJavaErrorHandler
sun.cpu.isalist =
#DrJava configuration file
#Tue Mar 13 10:28:37 CDT 2007
extra.classpath = <anonymized user.home>/Code/dj/drjava/drjava-15.jar:<anonymized user.home>/Code/dj/drjava/lib/plt.jar
font.line.numbers = Monaco-8
lineenum.enabled = true
key.find.next = command G
key.goto.line = command L
key.previous.document = command UP
key.next.document = command DOWN
key.goto.opening.brace = <none>
key.goto.closing.brace = <none>
key.browse.forward = command shift CLOSE_BRACKET
key.browse.back = command shift OPEN_BRACKET
key.begin.document = HOME
key.begin.line = command LEFT
key.previous.word = option LEFT
key.delete.next = shift DELETE
key.delete.previous = shift BACK_SPACE
key.end.document = END
key.end.line = command RIGHT
key.next.word = option RIGHT
find.replace.all.documents = true
interactions.exit.prompt = false
quit.prompt = false
interactions.reset.prompt = false
save.before.compile = true
warn.debug.modified.file = false
open.folder.recursive = true
auto.close.comments = true
show.finally.warnings = true
show.fallthrough.warnings = true
recent.files = [<anonymized user.home>/Code/misc/CompilerBugs/CaptureBounds.java,<anonymized user.home>/Code/misc/PaperExamples.java,<anonymized user.home>/Code/misc/CompilerBugs/CaptureWithVariableBound.java,<anonymized user.home>/Code/dj/plt/src/edu/rice/cs/plt/iter/ComposedIterable.java,<anonymized user.home>/Code/dlsmith/gedcom/GenDatabase.java]
recent.projects = [<anonymized user.home>/Code/dj/plt.pjt,<anonymized user.home>/Code/dj/dyj-old.pjt,<anonymized user.home>/Code/dj/dj.pjt,<anonymized user.home>/Code/dj/dyj.pjt,<anonymized user.home>/Desktop/Downloads/junit_package_hang/JUnit_Package_Hang.pjt]
window.height = 692
window.width = 1024
window.x = 0
window.y = 22
doc.list.width = 79
last.dir = <anonymized user.home>/Code/misc/CompilerBugs/StaticImportOverloading.java
last.interactions.dir = <anonymized user.home>/Code/misc
find.replace.focus.in.defpane = true
show.code.preview.popups = false
Used memory: about 7.14 megabytes
Free memory: about 9.92 megabytes
Total memory: about 17.07 megabytes
Total memory can expand to: about 63.31 megabytes
Logged In: YES
user_id=1075744
Originator: NO
As of revision 4293, I am suppressing this error. We should still improve our parser.