bugReporter.reportBug( new BugInstance( "FE_FLOATING_POINT_EQUALITY", LOW_PRIORITY) .addClassAndMethod(this) .addSourceLine(this) );
SourceLineAnnotation sourceLineAnnotation = SourceLineAnnotation.fromVisitedInstruction(getClassContext(), this, getPC()); if (sourceLineAnnotation != null) found.add(sourceLineAnnotation);
	public void sawOpcode(int seen) {		try {			switch ( seen ) {				case FCMPG:				case FCMPL:				case DCMPG:				case DCMPL:					if (opStack.getStackDepth() >= 2) {						OpcodeStack.Item first = opStack.getStackItem(0);						OpcodeStack.Item second = opStack.getStackItem(1);												state = SAW_NOTHING;						Number n1 = (Number)first.getConstant();						Number n2 = (Number)second.getConstant();						if ((n1 != null) && (n1.doubleValue() == 0.0f))							return;						if ((n2 != null) && (n2.doubleValue() == 0.0f))							return;					}					state = SAW_COMP;				break;								case IFEQ:				case IFNE:					if (state == SAW_COMP) {						bugReporter.reportBug(							new BugInstance(								"FE_FLOATING_POINT_EQUALITY",								LOW_PRIORITY)							.addClassAndMethod(this)							.addSourceLine(this)							);					}					state = SAW_NOTHING;				break;								default:					state = SAW_NOTHING;				break;			}		}		finally {			opStack.sawOpcode(this, seen);		}	}