Buggy code:
public class DocumentElementParser extends Parser { IDocumentElementRequestor requestor ; private int localIntPtr ; private int lastFieldEndPosition ; private int lastFieldBodyEndPosition ; private int typeStartPosition ; private long selectorSourcePositions ; private int typeDims ; private int extendsDim ; private int declarationSourceStart ; int [ ] [ ] intArrayStack ; int intArrayPtr ; public DocumentElementParser ( final IDocumentElementRequestor requestor , IProblemFactory problemFactory , CompilerOptions options ) { } protected void adjustInterfaceModifiers ( ) { } public void checkAnnotation ( ) { } protected void consumeClassBodyDeclaration ( ) { } protected void consumeClassDeclaration ( ) { } protected void consumeClassHeader ( ) { } protected void consumeClassHeaderName ( ) { } protected void consumeCompilationUnit ( ) { } protected void consumeConstructorDeclaration ( ) { } protected void consumeConstructorHeader ( ) { } protected void consumeConstructorHeaderName ( ) { } protected void consumeDefaultModifiers ( ) { } protected void consumeDiet ( ) { } protected void consumeEnterCompilationUnit ( ) { } protected void consumeEnterVariable ( ) { } protected void consumeExitVariableWithInitialization ( ) { } protected void consumeExitVariableWithoutInitialization ( ) { } protected void consumeFieldDeclaration ( ) { } protected void consumeFormalParameter ( ) { } protected void consumeInterfaceDeclaration ( ) { } protected void consumeInterfaceHeader ( ) { } protected void consumeInterfaceHeaderName ( ) { } protected void consumeLocalVariableDeclaration ( ) { } protected void consumeMethodDeclaration ( boolean isNotAbstract ) { } protected void consumeMethodHeader ( ) { } protected void consumeMethodHeaderExtendedDims ( ) { } protected void consumeMethodHeaderName ( ) { } protected void consumeModifiers ( ) { } protected void consumePackageDeclarationName ( ) { } protected void consumePushModifiers ( ) { } protected void consumeSingleTypeImportDeclarationName ( ) { } protected void consumeStaticInitializer ( ) { } protected void consumeStaticOnly ( ) { } protected void consumeTypeImportOnDemandDeclarationName ( ) { } public CompilationUnitDeclaration endParse ( int act ) { if ( scanner . recordLineSeparator ) { <START_BUG> requestor . acceptLineSeparatorPositions ( scanner . lineEnds ( ) ) ; <END_BUG> } return super . endParse ( act ) ; } public int flushAnnotationsDefinedPriorTo ( int position ) { } protected TypeReference getTypeReference ( int dim ) { } public void initialize ( ) { } private boolean isLocalDeclaration ( ) { } public void parseCompilationUnit ( ICompilationUnit unit ) { } public void parseConstructor ( char [ ] regionSource ) { } public void parseField ( char [ ] regionSource ) { } public void parseImport ( char [ ] regionSource ) { } public void parseInitializer ( char [ ] regionSource ) { } public void parseMethod ( char [ ] regionSource ) { } public void parsePackage ( char [ ] regionSource ) { } public void parseType ( char [ ] regionSource ) { } public ProblemReporter problemReporter ( ) { } protected void pushOnIntArrayStack ( int [ ] positions ) { } protected void resetModifiers ( ) { } protected boolean resumeOnSyntaxError ( ) { } private char [ ] returnTypeName ( TypeReference type ) { } public String toString ( ) { } protected TypeReference typeReference ( int dim , int localIdentifierPtr , int localIdentifierLengthPtr ) { } }

Fix:
requestor . acceptLineSeparatorPositions ( scanner . getLineEnds ( ) ) ;