Buggy code:
public class JavaProject extends Openable implements IProjectNature , IJavaProject { protected static final String [ ] NO_PREREQUISITES = new String [ 0 ] ; protected static final boolean IS_CASE_SENSITIVE = ! ( new File ( "Temp" ) . equals ( new File ( "temp" ) ) ) ; protected IProject fProject ; public JavaProject ( ) { } public JavaProject ( IProject project , IJavaElement parent ) { } protected void addToBuildSpec ( String builderID ) throws CoreException { } public static IPath canonicalizedPath ( IPath externalPath ) { } protected void closing ( Object info ) throws JavaModelException { } public IPackageFragmentRoot [ ] computePackageFragmentRoots ( boolean retrieveExportedRoots ) { } public void computePackageFragmentRoots ( ObjectVector accumulatedRoots , HashSet rootIDs , boolean insideOriginalProject , boolean checkExistency , boolean retrieveExportedRoots ) { } public void computePackageFragmentRoots ( IClasspathEntry entry , ObjectVector accumulatedRoots , HashSet rootIDs , boolean insideOriginalProject , boolean checkExistency , boolean retrieveExportedRoots ) { } public String computeSharedPropertyFileName ( QualifiedName qName ) { } public void configure ( ) throws CoreException { } protected OpenableElementInfo createElementInfo ( ) { } public void deconfigure ( ) throws CoreException { } protected IClasspathEntry [ ] defaultClasspath ( ) throws JavaModelException { } protected IPath defaultOutputLocation ( ) throws JavaModelException { } public boolean equals ( Object o ) { } public IJavaElement findElement ( IPath path ) throws JavaModelException { } public IPackageFragment findPackageFragment ( IPath path ) throws JavaModelException { } public IPackageFragmentRoot findPackageFragmentRoot ( IPath path ) throws JavaModelException { } protected boolean generateInfos ( OpenableElementInfo info , IProgressMonitor pm , Map newElements , IResource underlyingResource , IProblemRequestor problemRequestor ) throws JavaModelException { } public IPackageFragmentRoot [ ] getAllPackageFragmentRoots ( ) throws JavaModelException { } protected String getClasspathAsXMLString ( IClasspathEntry [ ] classpath , IPath outputLocation ) throws JavaModelException { } public IClasspathEntry getClasspathEntryFor ( IPath path ) throws JavaModelException { } public QualifiedName getClasspathPropertyName ( ) { } protected static Element getEntryAsXMLElement ( Document document , IClasspathEntry entry , IPath prefixPath ) throws JavaModelException { } protected char getHandleMementoDelimiter ( ) { } private ICommand getJavaCommand ( IProjectDescription description ) throws CoreException { } public IJavaProject getJavaProject ( ) { } protected JavaProjectElementInfo getJavaProjectElementInfo ( ) throws JavaModelException { } public NameLookup getNameLookup ( ) throws JavaModelException { } public Object [ ] getNonJavaResources ( ) throws JavaModelException { } public IPath getOutputLocation ( ) throws JavaModelException { } public IPackageFragmentRoot getPackageFragmentRoot ( String jarPath ) { } public IPackageFragmentRoot getPackageFragmentRoot ( IResource resource ) { } public IPackageFragmentRoot getPackageFragmentRoot ( IPath path ) { } public IPackageFragmentRoot [ ] getPackageFragmentRoots ( ) throws JavaModelException { } protected IPackageFragmentRoot [ ] getPackageFragmentRoots ( IPath path ) throws JavaModelException { } public IPackageFragmentRoot [ ] getPackageFragmentRoots ( IClasspathEntry entry ) { } public IPackageFragment [ ] getPackageFragments ( ) throws JavaModelException { } public IPackageFragment [ ] getPackageFragmentsInRoots ( IPackageFragmentRoot [ ] roots ) { } public IProject getProject ( ) { } public IClasspathEntry [ ] getRawClasspath ( ) throws JavaModelException { } public String [ ] getRequiredProjectNames ( ) throws JavaModelException { } public IClasspathEntry [ ] getResolvedClasspath ( boolean ignoreUnresolvedVariable ) throws JavaModelException { } public IClasspathEntry [ ] getResolvedClasspath ( boolean ignoreUnresolvedVariable , boolean generateMarkerOnError ) throws JavaModelException { JavaProjectElementInfo projectInfo = getJavaProjectElementInfo ( ) ; if ( ignoreUnresolvedVariable && ( ! generateMarkerOnError ) ) { IClasspathEntry [ ] infoPath = projectInfo . lastResolvedClasspath ; if ( infoPath != null ) return infoPath ; } IClasspathEntry [ ] classpath = getRawClasspath ( ) ; if ( generateMarkerOnError ) { flushClasspathProblemMarkers ( false ) ; } IClasspathEntry [ ] resolvedPath = classpath ; int length = classpath . length ; int index = 0 ; for ( int i = 0 ; i < length ; i ++ ) { IClasspathEntry entry = classpath [ i ] ; if ( generateMarkerOnError ) { IJavaModelStatus status = JavaConventions . validateClasspathEntry ( this , entry , false ) ; if ( ! ( status . isOK ( ) ) ) <START_BUG> createClasspathProblemMarker ( status . getMessage ( ) , IMarker . SEVERITY_WARNING , false ) ; <END_BUG> } if ( ( entry . getEntryKind ( ) ) == ( IClasspathEntry . CPE_VARIABLE ) ) { if ( resolvedPath == classpath ) { System . arraycopy ( classpath , 0 , ( resolvedPath = new IClasspathEntry [ length ] ) , 0 , i ) ; } IPath variablePath = entry . getPath ( ) ; entry = JavaCore . getResolvedClasspathEntry ( entry ) ; if ( entry == null ) { if ( ! ignoreUnresolvedVariable ) { throw new JavaModelException ( new JavaModelStatus ( IJavaModelStatusConstants . CP_VARIABLE_PATH_UNBOUND , variablePath . toString ( ) ) ) ; } } } if ( entry != null ) { resolvedPath [ ( index ++ ) ] = entry ; } } if ( index != length ) { System . arraycopy ( resolvedPath , 0 , ( resolvedPath = new IClasspathEntry [ index ] ) , 0 , index ) ; } projectInfo . lastResolvedClasspath = resolvedPath ; return resolvedPath ; } public IClasspathEntry [ ] getExpandedClasspath ( boolean ignoreUnresolvedVariable ) throws JavaModelException { } public IClasspathEntry [ ] getExpandedClasspath ( boolean ignoreUnresolvedVariable , boolean generateMarkerOnError ) throws JavaModelException { } private void computeExpandedClasspath ( JavaProject initialProject , boolean ignoreUnresolvedVariable , boolean generateMarkerOnError , HashSet visitedProjects , ObjectVector accumulatedEntries ) throws JavaModelException { } public ISearchableNameEnvironment getSearchableNameEnvironment ( ) throws JavaModelException { } public String getSharedProperty ( QualifiedName key ) throws CoreException { } public SourceMapper getSourceMapper ( ) { } public IResource getUnderlyingResource ( ) throws JavaModelException { } public boolean hasBuildState ( ) { } public boolean hasClasspathCycle ( IClasspathEntry [ ] entries ) { } public int hashCode ( ) { } public boolean hasSource ( ) { } public boolean isClasspathEqualsTo ( IClasspathEntry [ ] otherClasspathWithOutput ) throws JavaModelException { } static int kindFromString ( String kindStr ) { }

Fix:
createClasspathProblemMarker ( status . getMessage ( ) , IMarker . SEVERITY_ERROR , false ) ;