Buggy code:
public class Javadoc extends ASTNode { public JavadocSingleNameReference [ ] paramReferences ; public JavadocSingleTypeReference [ ] paramTypeParameters ; public TypeReference [ ] exceptionReferences ; public JavadocReturnStatement returnStatement ; public Expression [ ] seeReferences ; public long inheritedPositions = - 1 ; public JavadocSingleNameReference [ ] invalidParameters ; public Javadoc ( int sourceStart , int sourceEnd ) { } public StringBuffer print ( int indent , StringBuffer output ) { } public void resolve ( ClassScope scope ) { } public void resolve ( MethodScope methScope ) { } private void resolveReference ( Expression reference , Scope scope ) { switch ( scope . kind ) { case Scope . METHOD_SCOPE : reference . resolveType ( ( ( MethodScope ) ( scope ) ) ) ; break ; case Scope . CLASS_SCOPE : reference . resolveType ( ( ( ClassScope ) ( scope ) ) ) ; break ; } <START_BUG> boolean verifyValues = ( scope . environment ( ) . options . sourceLevel ) >= ( ClassFileConstants . JDK1_5 ) ; <END_BUG> if ( reference instanceof JavadocFieldReference ) { JavadocFieldReference fieldRef = ( ( JavadocFieldReference ) ( reference ) ) ; int modifiers = ( ( fieldRef . binding ) == null ) ? - 1 : fieldRef . binding . modifiers ; if ( ( fieldRef . methodBinding ) != null ) { if ( ( fieldRef . tagValue ) == ( AbstractCommentParser . TAG_VALUE_VALUE ) ) { scope . problemReporter ( ) . javadocInvalidValueReference ( fieldRef . sourceStart , fieldRef . sourceEnd , modifiers ) ; } else if ( ( fieldRef . receiverType ) != null ) { fieldRef . superAccess = scope . enclosingSourceType ( ) . isCompatibleWith ( fieldRef . receiverType ) ; fieldRef . methodBinding = scope . findMethod ( ( ( ReferenceBinding ) ( fieldRef . receiverType ) ) , fieldRef . token , new TypeBinding [ 0 ] , fieldRef ) ; } } else if ( ( verifyValues && ( ( fieldRef . binding ) != null ) ) && ( fieldRef . binding . isValidBinding ( ) ) ) { if ( ( ( fieldRef . tagValue ) == ( AbstractCommentParser . TAG_VALUE_VALUE ) ) && ( ! ( fieldRef . binding . isStatic ( ) ) ) ) { scope . problemReporter ( ) . javadocInvalidValueReference ( fieldRef . sourceStart , fieldRef . sourceEnd , modifiers ) ; } } } if ( ! verifyValues ) return ; else if ( reference instanceof JavadocMessageSend ) { JavadocMessageSend msgSend = ( ( JavadocMessageSend ) ( reference ) ) ; int modifiers = ( ( msgSend . binding ) == null ) ? - 1 : msgSend . binding . modifiers ; if ( ( msgSend . tagValue ) == ( AbstractCommentParser . TAG_VALUE_VALUE ) ) { scope . problemReporter ( ) . javadocInvalidValueReference ( msgSend . sourceStart , msgSend . sourceEnd , modifiers ) ; } } else if ( reference instanceof JavadocAllocationExpression ) { JavadocAllocationExpression alloc = ( ( JavadocAllocationExpression ) ( reference ) ) ; int modifiers = ( ( alloc . binding ) == null ) ? - 1 : alloc . binding . modifiers ; if ( ( alloc . tagValue ) == ( AbstractCommentParser . TAG_VALUE_VALUE ) ) { scope . problemReporter ( ) . javadocInvalidValueReference ( alloc . sourceStart , alloc . sourceEnd , modifiers ) ; } } } private void resolveParamTags ( MethodScope methScope , boolean reportMissing ) { } private void resolveTypeParameterTags ( Scope scope , boolean reportMissing ) { } private void resolveThrowsTags ( MethodScope methScope , boolean reportMissing ) { } public ASTNode getNodeStartingAt ( int start ) { } }

Fix:
boolean verifyValues = ( scope . compilerOptions ( ) . sourceLevel ) >= ( ClassFileConstants . JDK1_5 ) ;