Buggy code:
public class CompletionJavadocParser extends JavadocParser { public static final int INLINE_ALL_TAGS_LENGTH ; public static final int BLOCK_ALL_TAGS_LENGTH ; char [ ] [ ] [ ] levelTags = new char [ 2 ] [ ] [ ] ; int [ ] levelTagsLength = new int [ 2 ] ; int cursorLocation ; CompletionOnJavadoc completionNode = null ; boolean pushText = false ; public CompletionJavadocParser ( CompletionParser sourceParser ) { } public boolean checkDeprecation ( int commentPtr ) { } protected boolean commentParse ( ) { } protected Object createArgumentReference ( char [ ] name , int dim , boolean isVarargs , Object typeRef , long [ ] dimPositions , long argNamePos ) throws InvalidInputException { } protected Object createFieldReference ( Object receiver ) throws InvalidInputException { } protected Object createMethodReference ( Object receiver , List arguments ) throws InvalidInputException { } protected Object createTypeReference ( int primitiveToken ) { } private char [ ] [ ] [ ] possibleTags ( char [ ] prefix , boolean newLine ) { } private CompletionJavadoc getCompletionJavadoc ( ) { } private CompletionParser getCompletionParser ( ) { } private void initLevelTags ( ) { <START_BUG> int level = ( ( ( int ) ( ( this . sourceLevel ) > > > 16 ) ) - ( ClassFileConstants . MAJOR_VERSION_1_1 ) ) + 1 ; <END_BUG> this . levelTags [ JavadocTagConstants . BLOCK_IDX ] = new char [ CompletionJavadocParser . BLOCK_ALL_TAGS_LENGTH ] [ ] ; this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] = 0 ; for ( int i = 0 ; i <= level ; i ++ ) { int length = JavadocTagConstants . BLOCK_TAGS [ i ] . length ; System . arraycopy ( JavadocTagConstants . BLOCK_TAGS [ i ] , 0 , this . levelTags [ JavadocTagConstants . BLOCK_IDX ] , this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] , length ) ; this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] += length ; } if ( ( this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] ) < ( CompletionJavadocParser . BLOCK_ALL_TAGS_LENGTH ) ) { System . arraycopy ( this . levelTags [ JavadocTagConstants . BLOCK_IDX ] , 0 , ( this . levelTags [ JavadocTagConstants . BLOCK_IDX ] = new char [ this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] ] [ ] ) , 0 , this . levelTagsLength [ JavadocTagConstants . BLOCK_IDX ] ) ; } this . levelTags [ JavadocTagConstants . INLINE_IDX ] = new char [ CompletionJavadocParser . INLINE_ALL_TAGS_LENGTH ] [ ] ; this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] = 0 ; for ( int i = 0 ; i <= level ; i ++ ) { int length = JavadocTagConstants . INLINE_TAGS [ i ] . length ; System . arraycopy ( JavadocTagConstants . INLINE_TAGS [ i ] , 0 , this . levelTags [ JavadocTagConstants . INLINE_IDX ] , this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] , length ) ; this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] += length ; } if ( ( this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] ) < ( CompletionJavadocParser . INLINE_ALL_TAGS_LENGTH ) ) { System . arraycopy ( this . levelTags [ JavadocTagConstants . INLINE_IDX ] , 0 , ( this . levelTags [ JavadocTagConstants . INLINE_IDX ] = new char [ this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] ] [ ] ) , 0 , this . levelTagsLength [ JavadocTagConstants . INLINE_IDX ] ) ; } } protected Object parseArguments ( Object receiver ) throws InvalidInputException { } protected boolean parseParam ( ) throws InvalidInputException { } protected boolean parseReference ( ) throws InvalidInputException { } protected boolean parseTag ( int previousPosition ) throws InvalidInputException { } protected boolean parseThrows ( ) { } protected boolean pushParamName ( boolean isTypeParam ) { } protected void pushText ( int start , int end ) { } protected int readToken ( ) throws InvalidInputException { } protected Object syntaxRecoverQualifiedName ( int primitiveToken ) throws InvalidInputException { } protected Object syntaxRecoverArgumentType ( Object receiver , List arguments , Object argument ) throws InvalidInputException { } protected Object syntaxRecoverEmptyArgumentType ( Object methodRef ) throws InvalidInputException { } protected void updateDocComment ( ) { } protected boolean verifySpaceOrEndComment ( ) { } }

Fix:
int level = ( ( ( int ) ( ( this . complianceLevel ) > > > 16 ) ) - ( ClassFileConstants . MAJOR_VERSION_1_1 ) ) + 1 ;