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
label= PreferencesMessages.getString("CompilerConfigurationBlock.default_settings.label"); 
		addCheckBox(complianceComposite, label, INTR_DEFAULT_COMPLIANCE, new String[] { DEFAULT, USER }, 0);	
		int indent= fPixelConverter.convertWidthInCharsToPixels(2);
		Control[] otherChildren= complianceComposite.getChildren();	
				
		String[] values14= new String[] { VERSION_1_1, VERSION_1_2, VERSION_1_3, VERSION_1_4 };
		String[] values14Labels= new String[] {
			PreferencesMessages.getString("CompilerConfigurationBlock.version11"),  
			PreferencesMessages.getString("CompilerConfigurationBlock.version12"), 
			PreferencesMessages.getString("CompilerConfigurationBlock.version13"), 
			PreferencesMessages.getString("CompilerConfigurationBlock.version14") 
		};
		
		label= PreferencesMessages.getString("CompilerConfigurationBlock.codegen_targetplatform.label"); 
		addComboBox(complianceComposite, label, PREF_CODEGEN_TARGET_PLATFORM, values14, values14Labels, indent);	
		label= PreferencesMessages.getString("CompilerConfigurationBlock.source_compatibility.label"); 
		addComboBox(complianceComposite, label, PREF_SOURCE_COMPATIBILITY, values34, values34Labels, indent);	
		String[] errorWarningIgnore= new String[] { ERROR, WARNING, IGNORE };
		
		String[] errorWarningIgnoreLabels= new String[] {
			PreferencesMessages.getString("CompilerConfigurationBlock.error"),  
			PreferencesMessages.getString("CompilerConfigurationBlock.warning"), 
			PreferencesMessages.getString("CompilerConfigurationBlock.ignore") 
		};
		label= PreferencesMessages.getString("CompilerConfigurationBlock.pb_assert_as_identifier.label"); 
		addComboBox(complianceComposite, label, PREF_PB_ASSERT_AS_IDENTIFIER, errorWarningIgnore, errorWarningIgnoreLabels, indent);		
		Control[] allChildren= complianceComposite.getChildren();
		fComplianceControls.addAll(Arrays.asList(allChildren));
		fComplianceControls.removeAll(Arrays.asList(otherChildren));