Buggy code:
public abstract class NamedMember extends Member { protected String name ; public NamedMember ( JavaElement parent , String name ) { } private void appendTypeParameters ( StringBuffer buffer ) throws JavaModelException { } public String getElementName ( ) { } protected String getKey ( IField field , boolean forceOpen ) throws JavaModelException { } protected String getKey ( IMethod method , boolean forceOpen ) throws JavaModelException { } protected String getKey ( IType type , boolean forceOpen ) throws JavaModelException { } protected String getFullyQualifiedParameterizedName ( String fullyQualifiedName , String uniqueKey ) throws JavaModelException { } protected IPackageFragment getPackageFragment ( ) { } public String getFullyQualifiedName ( char enclosingTypeSeparator , boolean showParameters ) throws JavaModelException { } public String getTypeQualifiedName ( char enclosingTypeSeparator , boolean showParameters ) throws JavaModelException { } protected ITypeParameter [ ] getTypeParameters ( ) throws JavaModelException { } public String [ ] [ ] resolveType ( String typeName ) throws JavaModelException { } public String [ ] [ ] resolveType ( String typeName , WorkingCopyOwner owner ) throws JavaModelException { JavaProject project = ( ( JavaProject ) ( getJavaProject ( ) ) ) ; SearchableEnvironment environment = project . newSearchableNameEnvironment ( owner ) ; class TypeResolveRequestor implements ISelectionRequestor { String [ ] [ ] answers = null ; public void acceptType ( char [ ] packageName , char [ ] tName , int modifiers , boolean isDeclaration , char [ ] uniqueKey , int start , int end ) { String [ ] answer = new String [ ] { new String ( packageName ) , new String ( tName ) } ; if ( ( this . answers ) == null ) { this . answers = new String [ ] [ ] { answer } ; } else { int length = this . answers . length ; System . arraycopy ( this . answers , 0 , ( this . answers = new String [ length + 1 ] [ ] ) , 0 , length ) ; this . answers [ length ] = answer ; } } public void acceptError ( CategorizedProblem error ) { } public void acceptField ( char [ ] declaringTypePackageName , char [ ] declaringTypeName , char [ ] fieldName , boolean isDeclaration , char [ ] uniqueKey , int start , int end ) { } public void acceptMethod ( char [ ] declaringTypePackageName , char [ ] declaringTypeName , String enclosingDeclaringTypeSignature , char [ ] selector , char [ ] [ ] parameterPackageNames , char [ ] [ ] parameterTypeNames , String [ ] parameterSignatures , char [ ] [ ] typeParameterNames , char [ ] [ ] [ ] typeParameterBoundNames , boolean isConstructor , boolean isDeclaration , char [ ] uniqueKey , int start , int end ) { } public void acceptPackage ( char [ ] packageName ) { } public void acceptTypeParameter ( char [ ] declaringTypePackageName , char [ ] declaringTypeName , char [ ] typeParameterName , boolean isDeclaration , int start , int end ) { } public void acceptMethodTypeParameter ( char [ ] declaringTypePackageName , char [ ] declaringTypeName , char [ ] selector , int selectorStart , int selcetorEnd , char [ ] typeParameterName , boolean isDeclaration , int start , int end ) { } } TypeResolveRequestor requestor = new TypeResolveRequestor ( ) ; <START_BUG> SelectionEngine engine = new SelectionEngine ( environment , requestor , project . getOptions ( true ) ) ; <END_BUG> engine . selectType ( typeName . toCharArray ( ) , ( ( IType ) ( this ) ) ) ; if ( NameLookup . VERBOSE ) { System . out . println ( ( ( ( ( Thread . currentThread ( ) ) + "<seq2seq4repair_space>TIME<seq2seq4repair_space>SPENT<seq2seq4repair_space>in<seq2seq4repair_space>NameLoopkup#seekTypesInSourcePackage:<seq2seq4repair_space>" ) + ( environment . nameLookup . timeSpentInSeekTypesInSourcePackage ) ) + "ms" ) ) ; System . out . println ( ( ( ( ( Thread . currentThread ( ) ) + "<seq2seq4repair_space>TIME<seq2seq4repair_space>SPENT<seq2seq4repair_space>in<seq2seq4repair_space>NameLoopkup#seekTypesInBinaryPackage:<seq2seq4repair_space>" ) + ( environment . nameLookup . timeSpentInSeekTypesInBinaryPackage ) ) + "ms" ) ) ; } return requestor . answers ; } }

Fix:
SelectionEngine engine = new SelectionEngine ( environment , requestor , project . getOptions ( true ) , owner ) ;