bugReporter.reportBug(bug);
    private void checkForSelfOperation(ClassContext classContext, Location location, ValueNumberDataflow valueNumberDataflow, String op, MethodGen methodGen, String sourceFile) throws DataflowAnalysisException {        ValueNumberFrame frame = valueNumberDataflow.getFactAtLocation(location);        if (!frame.isValid())  return;        ValueNumber v0 = frame.getStackValue(0);        ValueNumber v1 = frame.getStackValue(1);        if (!v1.equals(v0)) return;        Instruction ins = location.getHandle().getInstruction();        int priority = HIGH_PRIORITY;        int opcode = ins.getOpcode();        if (opcode == ISUB || opcode == INVOKEINTERFACE || opcode == INVOKEVIRTUAL)            priority = NORMAL_PRIORITY;        BugAnnotation annotation = FindNullDeref.findAnnotationFromValueNumber(methodGen.getMethod(), location, v0, frame);        String prefix = "SA_LOCAL_SELF_" ;        if (annotation instanceof FieldAnnotation)            prefix = "SA_FIELD_SELF_";        BugInstance bug = new BugInstance(this, "SA_LOCAL_SELF_" + op, priority).addClassAndMethod(methodGen, sourceFile)        .add(annotation).addSourceLine(classContext, methodGen, sourceFile, location.getHandle());                            }