View | Details | Raw Unified | Return to bug 73244 | Differences between
and this patch

Collapse All | Expand All

(-)compiler/org/eclipse/jdt/internal/compiler/ast/Javadoc.java (-3 / +4 lines)
Lines 13-18 Link Here
13
import org.eclipse.jdt.core.compiler.CharOperation;
13
import org.eclipse.jdt.core.compiler.CharOperation;
14
import org.eclipse.jdt.internal.compiler.ASTVisitor;
14
import org.eclipse.jdt.internal.compiler.ASTVisitor;
15
import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
15
import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
16
import org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
16
import org.eclipse.jdt.internal.compiler.lookup.*;
17
import org.eclipse.jdt.internal.compiler.lookup.*;
17
import org.eclipse.jdt.internal.compiler.parser.JavadocTagConstants;
18
import org.eclipse.jdt.internal.compiler.parser.JavadocTagConstants;
18
19
Lines 309-316 Link Here
309
		}
310
		}
310
311
311
		// @param tags
312
		// @param tags
312
		boolean considerParamRefAsUsage = methScope.compilerOptions().reportUnusedParameterIncludeDocCommentReference;
313
		CompilerOptions compilerOptions = methScope.compilerOptions();
313
		resolveParamTags(methScope, reportMissing, considerParamRefAsUsage);
314
		resolveParamTags(methScope, reportMissing, compilerOptions.reportUnusedParameterIncludeDocCommentReference /* considerParamRefAsUsage*/);
314
		resolveTypeParameterTags(methScope, reportMissing);
315
		resolveTypeParameterTags(methScope, reportMissing);
315
316
316
		// @return tags
317
		// @return tags
Lines 332-338 Link Here
332
		resolveThrowsTags(methScope, reportMissing);
333
		resolveThrowsTags(methScope, reportMissing);
333
334
334
		// @value tag
335
		// @value tag
335
		boolean source15 = methScope.compilerOptions().sourceLevel >= ClassFileConstants.JDK1_5;
336
		boolean source15 = compilerOptions.sourceLevel >= ClassFileConstants.JDK1_5;
336
		if (!source15 && methDecl != null && this.valuePositions != -1) {
337
		if (!source15 && methDecl != null && this.valuePositions != -1) {
337
			methScope.problemReporter().javadocUnexpectedTag((int)(this.valuePositions>>>32), (int) this.valuePositions);
338
			methScope.problemReporter().javadocUnexpectedTag((int)(this.valuePositions>>>32), (int) this.valuePositions);
338
		}
339
		}
(-)compiler/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.java (-1 / +18 lines)
Lines 81-91 Link Here
81
	}
81
	}
82
	    
82
	    
83
	// report errors for unreachable exception handlers
83
	// report errors for unreachable exception handlers
84
	for (int i = 0, count = this.handledExceptions.length; i < count; i++) {
84
	TypeBinding[] docCommentReferences = null;
85
	int docCommentReferencesLength = 0;
86
	if (scope.compilerOptions().
87
				reportUnusedDeclaredThrownExceptionIncludeDocCommentReference &&
88
			method.javadoc != null &&
89
			method.javadoc.exceptionReferences != null &&
90
			(docCommentReferencesLength = method.javadoc.exceptionReferences.length) > 0) {
91
		docCommentReferences = new TypeBinding[docCommentReferencesLength];
92
		for (int i = 0; i < docCommentReferencesLength; i++) {
93
			docCommentReferences[i] = method.javadoc.exceptionReferences[i].resolvedType;
94
		}
95
	}
96
	nextHandledException: for (int i = 0, count = this.handledExceptions.length; i < count; i++) {
85
		int index = this.indexes.get(this.handledExceptions[i]);
97
		int index = this.indexes.get(this.handledExceptions[i]);
86
		int cacheIndex = index / ExceptionHandlingFlowContext.BitCacheSize;
98
		int cacheIndex = index / ExceptionHandlingFlowContext.BitCacheSize;
87
		int bitMask = 1 << (index % ExceptionHandlingFlowContext.BitCacheSize);
99
		int bitMask = 1 << (index % ExceptionHandlingFlowContext.BitCacheSize);
88
		if ((this.isReached[cacheIndex] & bitMask) == 0) {
100
		if ((this.isReached[cacheIndex] & bitMask) == 0) {
101
			for (int j = 0; j < docCommentReferencesLength; j++) {
102
				if (docCommentReferences[j] == this.handledExceptions[i]) {
103
					continue nextHandledException;
104
				}
105
			}
89
			scope.problemReporter().unusedDeclaredThrownException(
106
			scope.problemReporter().unusedDeclaredThrownException(
90
				this.handledExceptions[index],
107
				this.handledExceptions[index],
91
				method,
108
				method,
(-)model/org/eclipse/jdt/core/JavaCore.java (-1 / +19 lines)
Lines 68-73 Link Here
68
 *                                 COMPILER_PB_REDUNDANT_NULL_CHECK
68
 *                                 COMPILER_PB_REDUNDANT_NULL_CHECK
69
 *     IBM Corporation - added the following constants:
69
 *     IBM Corporation - added the following constants:
70
 *                                 COMPILER_PB_UNUSED_PARAMETER_INCLUDE_DOC_COMMENT_REFERENCE
70
 *                                 COMPILER_PB_UNUSED_PARAMETER_INCLUDE_DOC_COMMENT_REFERENCE
71
 *     IBM Corporation - added the following constants:
72
 *                                 COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION_INCLUDE_DOC_COMMENT_REFERENCE
71
 *******************************************************************************/
73
 *******************************************************************************/
72
package org.eclipse.jdt.core;
74
package org.eclipse.jdt.core;
73
75
Lines 438-443 Link Here
438
	/**
440
	/**
439
	 * Possible  configurable option ID.
441
	 * Possible  configurable option ID.
440
	 * @see #getDefaultOptions()
442
	 * @see #getDefaultOptions()
443
	 * @since 3.4
444
	 */
445
	public static final String COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION_INCLUDE_DOC_COMMENT_REFERENCE = PLUGIN_ID + ".compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference"; //$NON-NLS-1$
446
	/**
447
	 * Possible  configurable option ID.
448
	 * @see #getDefaultOptions()
441
	 * @since 3.0
449
	 * @since 3.0
442
	 */
450
	 */
443
	public static final String COMPILER_PB_UNQUALIFIED_FIELD_ACCESS = PLUGIN_ID + ".compiler.problem.unqualifiedFieldAccess"; //$NON-NLS-1$
451
	public static final String COMPILER_PB_UNQUALIFIED_FIELD_ACCESS = PLUGIN_ID + ".compiler.problem.unqualifiedFieldAccess"; //$NON-NLS-1$
Lines 2213-2219 Link Here
2213
	 *     - possible values:   { "error", "warning", "ignore" }
2221
	 *     - possible values:   { "error", "warning", "ignore" }
2214
	 *     - default:           "ignore"
2222
	 *     - default:           "ignore"
2215
	 *
2223
	 *
2216
	 * COMPILER / Reporting Unused Declared Thrown Exception in Overridind Method
2224
	 * COMPILER / Reporting Unused Declared Thrown Exception in Overriding Method
2217
	 *    When disabled, the compiler will not include overriding methods in its diagnosis for unused declared
2225
	 *    When disabled, the compiler will not include overriding methods in its diagnosis for unused declared
2218
	 *    thrown exceptions.
2226
	 *    thrown exceptions.
2219
	 *    <br>
2227
	 *    <br>
Lines 2222-2227 Link Here
2222
	 *     - possible values:   { "enabled", "disabled" }
2230
	 *     - possible values:   { "enabled", "disabled" }
2223
	 *     - default:           "disabled"
2231
	 *     - default:           "disabled"
2224
	 *
2232
	 *
2233
	 * COMPILER / Consider Reference in Doc Comment for Unused Declared Thrown Exception Check
2234
	 *    When enabled, the compiler will consider doc comment references to exceptions (i.e. @throws clauses) for the unused
2235
	 *    declared thrown exception check. Thus, documented exceptions will be considered as mandated as per doc contract.
2236
	 *    The severity of the unused declared thrown exception problem is controlled with option "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException".
2237
	 *    Note: this option has no effect until the doc comment support is enabled according to the 
2238
	 *    option "org.eclipse.jdt.core.compiler.doc.comment.support".
2239
	 *     - option id:         "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocReference"
2240
	 *     - possible values:   { "enabled", "disabled" }
2241
	 *     - default:           "enabled"
2242
	 *
2225
	 * COMPILER / Reporting Unqualified Access to Field
2243
	 * COMPILER / Reporting Unqualified Access to Field
2226
	 *    When enabled, the compiler will issue an error or a warning when a field is access without any qualification.
2244
	 *    When enabled, the compiler will issue an error or a warning when a field is access without any qualification.
2227
	 *    In order to improve code readability, it should be qualified, e.g. 'x' should rather be written 'this.x'.
2245
	 *    In order to improve code readability, it should be qualified, e.g. 'x' should rather be written 'this.x'.
(-)compiler/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java (-2 / +13 lines)
Lines 79-84 Link Here
79
	public static final String OPTION_ReportFinallyBlockNotCompletingNormally = "org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally"; //$NON-NLS-1$
79
	public static final String OPTION_ReportFinallyBlockNotCompletingNormally = "org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally"; //$NON-NLS-1$
80
	public static final String OPTION_ReportUnusedDeclaredThrownException = "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException"; //$NON-NLS-1$
80
	public static final String OPTION_ReportUnusedDeclaredThrownException = "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException"; //$NON-NLS-1$
81
	public static final String OPTION_ReportUnusedDeclaredThrownExceptionWhenOverriding = "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding"; //$NON-NLS-1$
81
	public static final String OPTION_ReportUnusedDeclaredThrownExceptionWhenOverriding = "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding"; //$NON-NLS-1$
82
	public static final String OPTION_ReportUnusedDeclaredThrownExceptionIncludeDocCommentReference = "org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference"; //$NON-NLS-1$
82
	public static final String OPTION_ReportUnqualifiedFieldAccess = "org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess"; //$NON-NLS-1$
83
	public static final String OPTION_ReportUnqualifiedFieldAccess = "org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess"; //$NON-NLS-1$
83
	public static final String OPTION_ReportUncheckedTypeOperation = "org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation"; //$NON-NLS-1$
84
	public static final String OPTION_ReportUncheckedTypeOperation = "org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation"; //$NON-NLS-1$
84
	public static final String OPTION_ReportRawTypeReference =  "org.eclipse.jdt.core.compiler.problem.rawTypeReference"; //$NON-NLS-1$
85
	public static final String OPTION_ReportRawTypeReference =  "org.eclipse.jdt.core.compiler.problem.rawTypeReference"; //$NON-NLS-1$
Lines 275-280 Link Here
275
276
276
	// unused declaration of thrown exception
277
	// unused declaration of thrown exception
277
	public boolean reportUnusedDeclaredThrownExceptionWhenOverriding = false;
278
	public boolean reportUnusedDeclaredThrownExceptionWhenOverriding = false;
279
	public boolean reportUnusedDeclaredThrownExceptionIncludeDocCommentReference = true;
278
280
279
	// constructor/setter parameter hiding
281
	// constructor/setter parameter hiding
280
	public boolean reportSpecialParameterHidingField = false;
282
	public boolean reportSpecialParameterHidingField = false;
Lines 396-401 Link Here
396
		optionsMap.put(OPTION_ReportFinallyBlockNotCompletingNormally, getSeverityString(FinallyBlockNotCompleting));
398
		optionsMap.put(OPTION_ReportFinallyBlockNotCompletingNormally, getSeverityString(FinallyBlockNotCompleting));
397
		optionsMap.put(OPTION_ReportUnusedDeclaredThrownException, getSeverityString(UnusedDeclaredThrownException));
399
		optionsMap.put(OPTION_ReportUnusedDeclaredThrownException, getSeverityString(UnusedDeclaredThrownException));
398
		optionsMap.put(OPTION_ReportUnusedDeclaredThrownExceptionWhenOverriding, this.reportUnusedDeclaredThrownExceptionWhenOverriding ? ENABLED : DISABLED);
400
		optionsMap.put(OPTION_ReportUnusedDeclaredThrownExceptionWhenOverriding, this.reportUnusedDeclaredThrownExceptionWhenOverriding ? ENABLED : DISABLED);
401
		optionsMap.put(OPTION_ReportUnusedDeclaredThrownExceptionIncludeDocCommentReference, this.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference ? ENABLED : DISABLED);
399
		optionsMap.put(OPTION_ReportUnqualifiedFieldAccess, getSeverityString(UnqualifiedFieldAccess));
402
		optionsMap.put(OPTION_ReportUnqualifiedFieldAccess, getSeverityString(UnqualifiedFieldAccess));
400
		optionsMap.put(OPTION_ReportUncheckedTypeOperation, getSeverityString(UncheckedTypeOperation));
403
		optionsMap.put(OPTION_ReportUncheckedTypeOperation, getSeverityString(UncheckedTypeOperation));
401
		optionsMap.put(OPTION_ReportRawTypeReference, getSeverityString(RawTypeReference));
404
		optionsMap.put(OPTION_ReportRawTypeReference, getSeverityString(RawTypeReference));
Lines 659-664 Link Here
659
				this.reportUnusedDeclaredThrownExceptionWhenOverriding = false;
662
				this.reportUnusedDeclaredThrownExceptionWhenOverriding = false;
660
			}
663
			}
661
		}
664
		}
665
		if ((optionValue = optionsMap.get(OPTION_ReportUnusedDeclaredThrownExceptionIncludeDocCommentReference)) != null) {
666
			if (ENABLED.equals(optionValue)) {
667
				this.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference = true;
668
			} else if (DISABLED.equals(optionValue)) {
669
				this.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference = false;
670
			}
671
		}
662
		if ((optionValue = optionsMap.get(OPTION_Compliance)) != null) {
672
		if ((optionValue = optionsMap.get(OPTION_Compliance)) != null) {
663
			long level = versionToJdkLevel(optionValue);
673
			long level = versionToJdkLevel(optionValue);
664
			if (level != 0) this.complianceLevel = level;
674
			if (level != 0) this.complianceLevel = level;
Lines 969-976 Link Here
969
		buf.append("\n\t\t+ visibility level to report missing javadoc comments: ").append(getVisibilityString(this.reportMissingJavadocCommentsVisibility)); //$NON-NLS-1$
979
		buf.append("\n\t\t+ visibility level to report missing javadoc comments: ").append(getVisibilityString(this.reportMissingJavadocCommentsVisibility)); //$NON-NLS-1$
970
		buf.append("\n\t\t+ report missing javadoc comments in overriding methods: ").append(this.reportMissingJavadocCommentsOverriding ? ENABLED : DISABLED); //$NON-NLS-1$
980
		buf.append("\n\t\t+ report missing javadoc comments in overriding methods: ").append(this.reportMissingJavadocCommentsOverriding ? ENABLED : DISABLED); //$NON-NLS-1$
971
		buf.append("\n\t- finally block not completing normally: ").append(getSeverityString(FinallyBlockNotCompleting)); //$NON-NLS-1$
981
		buf.append("\n\t- finally block not completing normally: ").append(getSeverityString(FinallyBlockNotCompleting)); //$NON-NLS-1$
972
		buf.append("\n\t- unused declared thrown exception: ").append(getSeverityString(UnusedDeclaredThrownException)); //$NON-NLS-1$
982
		buf.append("\n\t- report unused declared thrown exception: ").append(getSeverityString(UnusedDeclaredThrownException)); //$NON-NLS-1$
973
		buf.append("\n\t- unused declared thrown exception when overriding: ").append(this.reportUnusedDeclaredThrownExceptionWhenOverriding ? ENABLED : DISABLED); //$NON-NLS-1$
983
		buf.append("\n\t- report unused declared thrown exception when overriding: ").append(this.reportUnusedDeclaredThrownExceptionWhenOverriding ? ENABLED : DISABLED); //$NON-NLS-1$
984
		buf.append("\n\t- report unused declared thrown exception include doc comment reference: ").append(this.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference ? ENABLED : DISABLED); //$NON-NLS-1$
974
		buf.append("\n\t- unnecessary else: ").append(getSeverityString(UnnecessaryElse)); //$NON-NLS-1$
985
		buf.append("\n\t- unnecessary else: ").append(getSeverityString(UnnecessaryElse)); //$NON-NLS-1$
975
		buf.append("\n\t- JDK compliance level: "+ versionFromJdkLevel(this.complianceLevel)); //$NON-NLS-1$
986
		buf.append("\n\t- JDK compliance level: "+ versionFromJdkLevel(this.complianceLevel)); //$NON-NLS-1$
976
		buf.append("\n\t- JDK source level: "+ versionFromJdkLevel(this.sourceLevel)); //$NON-NLS-1$
987
		buf.append("\n\t- JDK source level: "+ versionFromJdkLevel(this.sourceLevel)); //$NON-NLS-1$
(-)src/org/eclipse/jdt/core/tests/compiler/regression/ProgrammingProblemsTest.java (-5 / +51 lines)
Lines 349-355 Link Here
349
// exceptions using the Javadoc
349
// exceptions using the Javadoc
350
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73244
350
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73244
351
// @throws disables by default
351
// @throws disables by default
352
public void _test0009_declared_thrown_checked_exceptions() {
352
public void test0009_declared_thrown_checked_exceptions() {
353
	Map customOptions = new HashMap();
353
	Map customOptions = new HashMap();
354
	customOptions.put(CompilerOptions.OPTION_DocCommentSupport, 
354
	customOptions.put(CompilerOptions.OPTION_DocCommentSupport, 
355
			CompilerOptions.ENABLED);
355
			CompilerOptions.ENABLED);
Lines 384-395 Link Here
384
// exceptions using the Javadoc
384
// exceptions using the Javadoc
385
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73244
385
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73244
386
// @throws disabling can be disabled
386
// @throws disabling can be disabled
387
public void _test0010_declared_thrown_checked_exceptions() {
387
public void test0010_declared_thrown_checked_exceptions() {
388
	Map customOptions = new HashMap();
388
	Map customOptions = new HashMap();
389
	customOptions.put(CompilerOptions.OPTION_DocCommentSupport, 
389
	customOptions.put(CompilerOptions.OPTION_DocCommentSupport, 
390
			CompilerOptions.ENABLED);
390
			CompilerOptions.ENABLED);
391
/*	customOptions.put(CompilerOptions.OPTION_ReportUnusedDeclaredThrownExceptionIncludeDocCommentReference, 
391
	customOptions.put(CompilerOptions.OPTION_ReportUnusedDeclaredThrownExceptionIncludeDocCommentReference, 
392
			CompilerOptions.DISABLED); */
392
			CompilerOptions.DISABLED);
393
	runTest(
393
	runTest(
394
		new String[] {
394
		new String[] {
395
			"X.java",
395
			"X.java",
Lines 406-412 Link Here
406
			} /* warningOptions */,
406
			} /* warningOptions */,
407
		null /* ignoreOptions */,
407
		null /* ignoreOptions */,
408
		false /* expectingCompilerErrors */,
408
		false /* expectingCompilerErrors */,
409
		"ERR" /* expectedCompilerLog */,
409
		"----------\n" + 
410
		"1. WARNING in X.java (at line 4)\n" + 
411
		"	public void foo() throws IOException {\n" + 
412
		"	                         ^^^^^^^^^^^\n" + 
413
		"The declared exception IOException is not actually thrown by the method foo() from type X\n" + 
414
		"----------\n" /* expectedCompilerLog */,
410
		"" /* expectedOutputString */,
415
		"" /* expectedOutputString */,
411
		false /* forceExecution */,
416
		false /* forceExecution */,
412
		null /* classLib */,
417
		null /* classLib */,
Lines 481-484 Link Here
481
		null /* clientRequestor */,
486
		null /* clientRequestor */,
482
		true /* skipJavac */);
487
		true /* skipJavac */);
483
}
488
}
489
490
// disabling the reporting of unnecessary declaration of thrown checked 
491
// exceptions using the Javadoc
492
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73244
493
// @throws disables by default, but only exact matches work
494
public void test0013_declared_thrown_checked_exceptions() {
495
	Map customOptions = new HashMap();
496
	customOptions.put(CompilerOptions.OPTION_DocCommentSupport, 
497
			CompilerOptions.ENABLED);
498
	runTest(
499
		new String[] {
500
			"X.java",
501
			"import java.io.IOException;\n" + 
502
			"import java.io.EOFException;\n" + 
503
			"public class X {\n" + 
504
			"/** @throws EOFException does not mute warning for IOException **/\n" + 
505
			"  public void foo() throws IOException {\n" + 
506
			"  }\n" + 
507
			"}\n"
508
			},
509
		null /* errorOptions */,
510
		new String[] {
511
			CompilerOptions.OPTION_ReportUnusedDeclaredThrownException
512
			} /* warningOptions */,
513
		null /* ignoreOptions */,
514
		false /* expectingCompilerErrors */,
515
		"----------\n" + 
516
		"1. WARNING in X.java (at line 5)\n" + 
517
		"	public void foo() throws IOException {\n" + 
518
		"	                         ^^^^^^^^^^^\n" + 
519
		"The declared exception IOException is not actually thrown by the method foo() from type X\n" + 
520
		"----------\n" /* expectedCompilerLog */,
521
		"" /* expectedOutputString */,
522
		false /* forceExecution */,
523
		null /* classLib */,
524
		true /* shouldFlushOutputDirectory */, 
525
		null /* vmArguments */, 
526
		customOptions,
527
		null /* clientRequestor */,
528
		true /* skipJavac */);
529
}
484
}
530
}
(-)src/org/eclipse/jdt/core/tests/compiler/regression/BatchCompilerTest.java (+1 lines)
Lines 1277-1282 Link Here
1277
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck\" value=\"ignore\"/>\n" +
1277
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck\" value=\"ignore\"/>\n" +
1278
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess\" value=\"ignore\"/>\n" +
1278
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess\" value=\"ignore\"/>\n" +
1279
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException\" value=\"ignore\"/>\n" +
1279
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException\" value=\"ignore\"/>\n" +
1280
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference\" value=\"enabled\"/>\n" +
1280
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding\" value=\"disabled\"/>\n" +
1281
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding\" value=\"disabled\"/>\n" +
1281
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedImport\" value=\"warning\"/>\n" +
1282
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedImport\" value=\"warning\"/>\n" +
1282
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedLabel\" value=\"warning\"/>\n" +
1283
			"		<option key=\"org.eclipse.jdt.core.compiler.problem.unusedLabel\" value=\"warning\"/>\n" +

Return to bug 73244