Bug 29726 New compiler setting added: OPTION_ReportIncompatibleNonInheritedInterfaceMethod
JavaCore#OPTION_ReportIncompatibleNonInheritedInterfaceMethod COMPILER / Reporting Interface Method not Compatible with non-Inherited Methods When enabled, the compiler will issue an error or a warning whenever an interface defines a method incompatible with a non-inherited Object one. - option id: "org.eclipse.jdt.core.compiler.incompatibleNonInheritedInterfaceMeth od" - possible values: { "error", "warning", "ignore" } - default: "warning" --- FYI - we used to always be reporting an error, where we should not. Now we default to a warning - not critical for 2.1M5, default is likely the best anyway. test case: interface I { int clone(); // should only be a warning }
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/CompilerConfigurationBlock.java
fContext.statusChanged(status);
	}
	
	private IStatus validateCompliance() {
		StatusInfo status= new StatusInfo();
		if (checkValue(PREF_COMPLIANCE, VERSION_1_3)) {
			if (checkValue(PREF_SOURCE_COMPATIBILITY, VERSION_1_4)) {
				status.setError(PreferencesMessages.getString("CompilerConfigurationBlock.cpl13src14.error")); 
				return status;
			} else if (checkValue(PREF_CODEGEN_TARGET_PLATFORM, VERSION_1_4)) {
				status.setError(PreferencesMessages.getString("CompilerConfigurationBlock.cpl13trg14.error")); 
				return status;
			}
		}
		if (checkValue(PREF_SOURCE_COMPATIBILITY, VERSION_1_4)) {
			if (!checkValue(PREF_PB_ASSERT_AS_IDENTIFIER, ERROR)) {
				status.setError(PreferencesMessages.getString("CompilerConfigurationBlock.src14asrterr.error")); 
				return status;
			}
		}
		if (checkValue(PREF_SOURCE_COMPATIBILITY, VERSION_1_4)) {
			if (!checkValue(PREF_CODEGEN_TARGET_PLATFORM, VERSION_1_4)) {
				status.setError(PreferencesMessages.getString("CompilerConfigurationBlock.src14tgt14.error")); 
				return status;
			}
		}
		return status;
	}
	
	private IStatus validateMaxNumberProblems() {