Bug 37919 Compiler preferences - should surface optional check for incompatible required binaries
HEAD from JDT/Core (not integrated yet) Added JavaCore optional problem to detect incompatible required binaries, so as to flag situations where some prerequisite binaries are required a JRE level higher than the project target platform; i.e. compiling against 1.4 libraries when deploying for 1.1 platform is likely unwanted. * JAVACORE / Reporting Incompatible JDK Level for Required Binaries * Indicate the severity of the problem reported when a project prerequisites another project * or library with an incompatible target JDK level (e.g. project targeting 1.1 vm, but compiled against 1.4 libraries). * - option id: "org.eclipse.jdt.core.incompatibleJDKLevel" * - possible values: { "error", "warning", "ignore" } * - default: "ignore"
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/CompilerConfigurationBlock.java
int indent= fPixelConverter.convertWidthInCharsToPixels(2);
		Control[] otherChildren= group.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(group, label, PREF_CODEGEN_TARGET_PLATFORM, values14, values14Labels, indent);	
		label= PreferencesMessages.getString("CompilerConfigurationBlock.source_compatibility.label"); 
		addComboBox(group, 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(group, label, PREF_PB_ASSERT_AS_IDENTIFIER, errorWarningIgnore, errorWarningIgnoreLabels, indent);		
		Control[] allChildren= group.getChildren();
		fComplianceControls.addAll(Arrays.asList(allChildren));
		fComplianceControls.removeAll(Arrays.asList(otherChildren));
		layout= new GridLayout();
		layout.numColumns= 2;
		group= new Group(compComposite, SWT.NONE);