Summary: | [compiler] Eclipse 3.4.1 java compiler creating class file with references to missing classes | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Heiko Minning <heiko.minning> |
Component: | Core | Assignee: | JDT-Core-Inbox <jdt-core-inbox> |
Status: | NEW --- | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | Olivier_Thomann, srikanth_sankaran, tobias.reese |
Version: | 3.4.1 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | Windows Vista | ||
Whiteboard: | stalebug |
Description
Heiko Minning
2008-11-25 10:13:25 EST
I believe this comes from the missing type support. The only thing we need to do in this case would be to set the superclass to Object if it is a missing type. > It allows me to preverify the whole source (this is part of a MIDP build environment) and run a project even if it contains compile errors in classes that are not used at runtime.
The new behavior is required for JSR-269, so old behavior is not going to come back easily.
How is it different from not being able to run binaries which are referring to types not on the classpath ? (i.e. the reference to missing type was present when compiled, but not available at runtime...). The new behavior is making both source and binary scenario behave somewhat consistently.
Actually this behavior breaks functionality provided before. Isn't there a way to provide a switch in the compiler settings to let the user configure the behavior? Maybe something like this: * Generate no classfile on compile Errors * Generate JSR-269 compatible classfiles I have no idea how much people will benefit from this change, but if we can't get back the old behavior eclipse >3.4 will be useless for us and quite a couple of other J2ME Developers which rely on this feature. Also any kind of suggestion to workaround this problem is very welcome. So how is that different from a situation where some binaries are missing some super types ? I can see the trouble in your case for super types from sources. Are you asking for any method referencing a missing type in its signature being not included as well ? Also note that this is not new in 3.4.1, this change got released along the lines of 3.4.0 (M4 or M5). This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie. This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie. |