Buggy code:
public void hierarchyHasProblems ( SourceTypeBinding type ) { } public void illegalAbstractModifierCombinationForMethod ( ReferenceBinding type , AbstractMethodDeclaration methodDecl ) { } public void illegalAccessFromTypeVariable ( TypeVariableBinding variable , ASTNode location ) { } public void illegalClassLiteralForTypeVariable ( TypeVariableBinding variable , ASTNode location ) { } public void illegalExtendedDimensions ( AnnotationMethodDeclaration annotationTypeMemberDeclaration ) { } public void illegalExtendedDimensions ( Argument argument ) { } public void illegalGenericArray ( TypeBinding leafComponentType , ASTNode location ) { } public void illegalInstanceOfGenericType ( TypeBinding checkedType , ASTNode location ) { } public void illegalLocalTypeDeclaration ( TypeDeclaration typeDeclaration ) { } public void illegalModifierCombinationFinalAbstractForClass ( SourceTypeBinding type ) { } public void illegalModifierCombinationFinalVolatileForField ( ReferenceBinding type , FieldDeclaration fieldDecl ) { } public void illegalModifierForAnnotationField ( FieldDeclaration fieldDecl ) { } public void illegalModifierForAnnotationMember ( AbstractMethodDeclaration methodDecl ) { } public void illegalModifierForAnnotationMemberType ( SourceTypeBinding type ) { } public void illegalModifierForAnnotationType ( SourceTypeBinding type ) { } public void illegalModifierForClass ( SourceTypeBinding type ) { } public void illegalModifierForEnum ( SourceTypeBinding type ) { } public void illegalModifierForEnumConstant ( ReferenceBinding type , FieldDeclaration fieldDecl ) { } public void illegalModifierForEnumConstructor ( AbstractMethodDeclaration constructor ) { } public void illegalModifierForField ( ReferenceBinding type , FieldDeclaration fieldDecl ) { } public void illegalModifierForInterface ( SourceTypeBinding type ) { } public void illegalModifierForInterfaceField ( FieldDeclaration fieldDecl ) { } public void illegalModifierForInterfaceMethod ( AbstractMethodDeclaration methodDecl ) { } public void illegalModifierForLocalClass ( SourceTypeBinding type ) { } public void illegalModifierForLocalEnum ( SourceTypeBinding type ) { } public void illegalModifierForMemberClass ( SourceTypeBinding type ) { } public void illegalModifierForMemberEnum ( SourceTypeBinding type ) { } public void illegalModifierForMemberInterface ( SourceTypeBinding type ) { } public void illegalModifierForMethod ( AbstractMethodDeclaration methodDecl ) { } public void illegalModifierForVariable ( LocalDeclaration localDecl , boolean complainAsArgument ) { } public void illegalPrimitiveOrArrayTypeForEnclosingInstance ( TypeBinding enclosingType , ASTNode location ) { } public void illegalQualifiedParameterizedTypeAllocation ( TypeReference qualifiedTypeReference , TypeBinding allocatedType ) { } public void illegalStaticModifierForMemberType ( SourceTypeBinding type ) { } public void illegalUsageOfQualifiedTypeReference ( QualifiedTypeReference qualifiedTypeReference ) { } public void illegalUsageOfWildcard ( TypeReference wildcard ) { } public void illegalVararg ( Argument argType , AbstractMethodDeclaration methodDecl ) { } public void illegalVisibilityModifierCombinationForField ( ReferenceBinding type , FieldDeclaration fieldDecl ) { } public void illegalVisibilityModifierCombinationForMemberType ( SourceTypeBinding type ) { } public void illegalVisibilityModifierCombinationForMethod ( ReferenceBinding type , AbstractMethodDeclaration methodDecl ) { } public void illegalVisibilityModifierForInterfaceMemberType ( SourceTypeBinding type ) { } public void illegalVoidExpression ( ASTNode location ) { } public void importProblem ( ImportReference importRef , Binding expectedImport ) { } public void incompatibleExceptionInThrowsClause ( SourceTypeBinding type , MethodBinding currentMethod , MethodBinding inheritedMethod , ReferenceBinding exceptionType ) { } public void incompatibleReturnType ( MethodBinding currentMethod , MethodBinding inheritedMethod ) { } public void incorrectArityForParameterizedType ( ASTNode location , TypeBinding type , TypeBinding [ ] argumentTypes ) { } public void incorrectLocationForNonEmptyDimension ( ArrayAllocationExpression expression , int index ) { } public void incorrectSwitchType ( Expression expression , TypeBinding testType ) { } public void indirectAccessToStaticField ( ASTNode location , FieldBinding field ) { } public void indirectAccessToStaticMethod ( ASTNode location , MethodBinding method ) { } public void inheritedMethodReducesVisibility ( SourceTypeBinding type , MethodBinding concreteMethod , MethodBinding [ ] abstractMethods ) { StringBuffer concreteSignature = new StringBuffer ( ) ; concreteSignature . append ( concreteMethod . declaringClass . readableName ( ) ) . append ( '.' ) . append ( concreteMethod . readableName ( ) ) ; StringBuffer shortSignature = new StringBuffer ( ) ; shortSignature . append ( concreteMethod . declaringClass . shortReadableName ( ) ) . append ( '.' ) . append ( concreteMethod . shortReadableName ( ) ) ; <START_BUG> this . handle ( IProblem . InheritedMethodReducesVisibility , new String [ ] { concreteSignature . toString ( ) , new String ( abstractMethods [ 0 ] . declaringClass . readableName ( ) ) } , new String [ ] { new String ( shortSignature . toString ( ) ) , new String ( abstractMethods [ 0 ] . declaringClass . shortReadableName ( ) ) } , type . sourceStart ( ) , type . sourceEnd ( ) ) ; <END_BUG> } public void inheritedMethodsHaveIncompatibleReturnTypes ( ASTNode location , MethodBinding [ ] inheritedMethods , int length ) { } public void inheritedMethodsHaveIncompatibleReturnTypes ( SourceTypeBinding type , MethodBinding [ ] inheritedMethods , int length ) { } public void inheritedMethodsHaveNameClash ( SourceTypeBinding type , MethodBinding oneMethod , MethodBinding twoMethod ) { } public void initializerMustCompleteNormally ( FieldDeclaration fieldDecl ) { } public void innerTypesCannotDeclareStaticInitializers ( ReferenceBinding innerType , Initializer initializer ) { } public void interfaceCannotHaveConstructors ( ConstructorDeclaration constructor ) { } public void interfaceCannotHaveInitializers ( SourceTypeBinding type , FieldDeclaration fieldDecl ) { } public void invalidAnnotationMemberType ( MethodDeclaration methodDecl ) { } public void invalidBreak ( ASTNode location ) { } public void invalidConstructor ( Statement statement , MethodBinding targetConstructor ) { } public void invalidContinue ( ASTNode location ) { } public void invalidEnclosingType ( Expression expression , TypeBinding type , ReferenceBinding enclosingType ) { } public void invalidExplicitConstructorCall ( ASTNode location ) { } public void invalidExpressionAsStatement ( Expression expression ) { } public void invalidField ( FieldReference fieldRef , TypeBinding searchedType ) { } public void invalidField ( NameReference nameRef , FieldBinding field ) { } public void invalidField ( QualifiedNameReference nameRef , FieldBinding field , int index , TypeBinding searchedType ) { } public void invalidFileNameForPackageAnnotations ( Annotation annotation ) { } public void invalidMethod ( MessageSend messageSend , MethodBinding method ) { } public void invalidNullToSynchronize ( Expression expression ) { } public void invalidOperator ( BinaryExpression expression , TypeBinding leftType , TypeBinding rightType ) { } public void invalidOperator ( CompoundAssignment assign , TypeBinding leftType , TypeBinding rightType ) { } public void invalidOperator ( UnaryExpression expression , TypeBinding type ) { } public void invalidParameterizedExceptionType ( TypeBinding exceptionType , ASTNode location ) { } public void invalidParenthesizedExpression ( ASTNode reference ) { } public void invalidType ( ASTNode location , TypeBinding type ) { }

Fix:
this . handle ( IProblem . InheritedMethodReducesVisibility , new String [ ] { concreteSignature . toString ( ) , new String ( abstractMethods [ 0 ] . declaringClass . readableName ( ) ) } , new String [ ] { shortSignature . toString ( ) , new String ( abstractMethods [ 0 ] . declaringClass . shortReadableName ( ) ) } , type . sourceStart ( ) , type . sourceEnd ( ) ) ;