Summary: | VerifyError when using j9 VM | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Milorad Stefanovic <milorads> | ||||||||
Component: | Core | Assignee: | Olivier Thomann <Olivier_Thomann> | ||||||||
Status: | RESOLVED INVALID | QA Contact: | |||||||||
Severity: | normal | ||||||||||
Priority: | P3 | CC: | Olivier_Thomann, steven.wasleski | ||||||||
Version: | 3.0 | ||||||||||
Target Milestone: | 3.1 M1 | ||||||||||
Hardware: | PC | ||||||||||
OS: | Windows 2000 | ||||||||||
Whiteboard: | |||||||||||
Attachments: |
|
Description
Milorad Stefanovic
2004-06-23 11:41:59 EDT
We need more information to reproduce the problem. Please attach an example of a file which would reproduce this issue. Please reopen once reproducing steps are available. Created attachment 13363 [details]
The automatically generated JavaCC token manager
The VerifyError that occurs with the -Xj9 flag on can be reproduced using the
attached JavaCC generated file (XQueryTokenManager.java). Thic file has one
particularly big method (jjMoveNfa_0), that contained a large number of
conditional branches (something like 700 case statements, as well as if/else
branches). The workaround solution is to move one large switch statement
containing some 200 cases into a different method, using parameters and class
fields to marshal the local variables. The new code is functionally the same as
before. However, if someone re-generates the parser code, the problem will
occur again.
Please see the attcahed file for more information. Could you please provide the class XQueryConstants and the class SimpleCharStream? I'd like to be able to compile your exact test case? Created attachment 13536 [details]
Standalone java file that can be compiled
VerifyError.java is the stand-alone source code that reproduces this defect.
VerifyError.class is the resulting class file compiled by Eclipse 3.0. The test
can be executed from the command line by typing "java -Xj9 VerifyTest". The
resulting message will be "The java class could not be loaded.
java.lang.VerifyError". If the same is attempted without the -Xj9 switch, no
error occurs.
Created attachment 13537 [details]
Class file
I will investigate. This is due to a bug in the J9 VM. It has nothing to do with the Eclipse .class file. Closing as INVALID. The bug has been reported against the J9 VM. Future version of the J9 VM should fix it. "The bug has been reported against the J9 VM. Future version of the J9 VM should fix it." Could you please provide the J9 bug name/number so I can check its status? VM bug. Closing as INVALID. |