Lines 258-265
Link Here
|
258 |
public int produceDebugAttributes; |
258 |
public int produceDebugAttributes; |
259 |
/** Compliance level for the compiler, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
259 |
/** Compliance level for the compiler, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
260 |
public long complianceLevel; |
260 |
public long complianceLevel; |
|
|
261 |
/** Compliance level for the compiler, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4}, |
262 |
* Usually same as the field complianceLevel, though the latter could deviate to create temporary sandbox |
263 |
* modes. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=323633 |
264 |
*/ |
265 |
public long originalComplianceLevel; |
261 |
/** Java source level, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
266 |
/** Java source level, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
262 |
public long sourceLevel; |
267 |
public long sourceLevel; |
|
|
268 |
/** Java source level, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} |
269 |
* Usually same as the field sourceLevel, though the latter could deviate to create temporary sandbox |
270 |
* modes. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=323633 |
271 |
* */ |
272 |
public long originalSourceLevel; |
263 |
/** VM target level, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
273 |
/** VM target level, refers to a JDK version, e.g. {link {@link ClassFileConstants#JDK1_4} */ |
264 |
public long targetJDK; |
274 |
public long targetJDK; |
265 |
/** Source encoding format */ |
275 |
/** Source encoding format */ |
Lines 953-960
Link Here
|
953 |
|
963 |
|
954 |
// by default only lines and source attributes are generated. |
964 |
// by default only lines and source attributes are generated. |
955 |
this.produceDebugAttributes = ClassFileConstants.ATTR_SOURCE | ClassFileConstants.ATTR_LINES; |
965 |
this.produceDebugAttributes = ClassFileConstants.ATTR_SOURCE | ClassFileConstants.ATTR_LINES; |
956 |
this.complianceLevel = ClassFileConstants.JDK1_4; // by default be compliant with 1.4 |
966 |
this.complianceLevel = this.originalComplianceLevel = ClassFileConstants.JDK1_4; // by default be compliant with 1.4 |
957 |
this.sourceLevel = ClassFileConstants.JDK1_3; //1.3 source behavior by default |
967 |
this.sourceLevel = this.originalSourceLevel = ClassFileConstants.JDK1_3; //1.3 source behavior by default |
958 |
this.targetJDK = ClassFileConstants.JDK1_2; // default generates for JVM1.2 |
968 |
this.targetJDK = ClassFileConstants.JDK1_2; // default generates for JVM1.2 |
959 |
|
969 |
|
960 |
this.defaultEncoding = null; // will use the platform default encoding |
970 |
this.defaultEncoding = null; // will use the platform default encoding |
Lines 1117-1127
Link Here
|
1117 |
} |
1127 |
} |
1118 |
if ((optionValue = optionsMap.get(OPTION_Compliance)) != null) { |
1128 |
if ((optionValue = optionsMap.get(OPTION_Compliance)) != null) { |
1119 |
long level = versionToJdkLevel(optionValue); |
1129 |
long level = versionToJdkLevel(optionValue); |
1120 |
if (level != 0) this.complianceLevel = level; |
1130 |
if (level != 0) this.complianceLevel = this.originalComplianceLevel = level; |
1121 |
} |
1131 |
} |
1122 |
if ((optionValue = optionsMap.get(OPTION_Source)) != null) { |
1132 |
if ((optionValue = optionsMap.get(OPTION_Source)) != null) { |
1123 |
long level = versionToJdkLevel(optionValue); |
1133 |
long level = versionToJdkLevel(optionValue); |
1124 |
if (level != 0) this.sourceLevel = level; |
1134 |
if (level != 0) this.sourceLevel = this.originalSourceLevel = level; |
1125 |
} |
1135 |
} |
1126 |
if ((optionValue = optionsMap.get(OPTION_TargetPlatform)) != null) { |
1136 |
if ((optionValue = optionsMap.get(OPTION_TargetPlatform)) != null) { |
1127 |
long level = versionToJdkLevel(optionValue); |
1137 |
long level = versionToJdkLevel(optionValue); |