Bug 117216 [preferences] Support JDK version 1.6
I'm on 3.2M3. I'm using JDK 1.6 and "Infer Generic Type Arguments" shows an error dialog that this action is only available with Java 5 or better. I think, the problem is that org.eclipse.jdt.internal.corext.util.JavaModelUtil#is50OrHigherJRE only checks for JDK 1.5. I've changed the last line of that method to return javaVersion.startsWith(JavaCore.VERSION_1_5) || javaVersion.startsWith("1.6"); and it seems to work (just a workaround). PS: Once there's a VERSION_1.6 compilance level, is50OrHigher() will also fail...
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/BuildPathSupport.java
* @param containerPath The path of the entry's parent container or <code>null</code> if the entry is not in a container
	 * @param monitor The progress monitor to use
	 * @throws CoreException
	 */
	public static void modifyClasspathEntry(Shell shell, IClasspathEntry newEntry, IJavaProject jproject, IPath containerPath, IProgressMonitor monitor) throws CoreException {
		modifyClasspathEntry(shell, newEntry, null, jproject, containerPath, monitor);
	}
	private static void updateContainerClasspath(IJavaProject jproject, IPath containerPath, IClasspathEntry newEntry, String[] changedAttributes, IProgressMonitor monitor) throws CoreException {
		IClasspathContainer container= JavaCore.getClasspathContainer(containerPath, jproject);
		if (container == null) {
			throw new CoreException(new Status(IStatus.ERROR, JavaUI.ID_PLUGIN, IStatus.ERROR, "Container " + containerPath + " cannot be resolved", null));  
		}
		IClasspathEntry[] entries= container.getClasspathEntries();
		IClasspathEntry[] newEntries= new IClasspathEntry[entries.length];
		for (int i= 0; i < entries.length; i++) {
			IClasspathEntry curr= entries[i];
			if (curr.getEntryKind() == newEntry.getEntryKind() && curr.getPath().equals(newEntry.getPath())) {
				newEntries[i]= getUpdatedEntry(curr, newEntry, changedAttributes, jproject);
			} else {
				newEntries[i]= curr;
			}
		}
		requestContainerUpdate(jproject, container, newEntries);
		monitor.worked(1);
	}
	private static IClasspathEntry getUpdatedEntry(IClasspathEntry currEntry, IClasspathEntry updatedEntry, String[] updatedAttributes, IJavaProject jproject) {
		if (updatedAttributes == null) {
			return updatedEntry; 
		}
		CPListElement currElem= CPListElement.createFromExisting(currEntry, jproject);