if (method.isAbstract() || method.isNative())
if (method.isAbstract() || method.isNative() || method.getCode() == null)
	public void visitClassContext(ClassContext classContext) {		try {			JavaClass jclass = classContext.getJavaClass();			Method[] methodList = jclass.getMethods();			for (int i = 0; i < methodList.length; ++i) {				Method method = methodList[i];				if (method.isAbstract() || method.isNative())					continue;				if (DEBUG) System.out.println(SignatureConverter.convertMethodSignature(jclass.getClassName(), method.getName(), method.getSignature()));				// Get the IsNullValueAnalysis for the method from the ClassContext				IsNullValueDataflow invDataflow = classContext.getIsNullValueDataflow(method);				// Look for null check blocks where the reference being checked				// is definitely null, or null on some path				Iterator<BasicBlock> bbIter = invDataflow.getCFG().blockIterator();				while (bbIter.hasNext()) {					BasicBlock basicBlock = bbIter.next();					if (basicBlock.isNullCheck()) {						InstructionHandle exceptionThrowerHandle = basicBlock.getExceptionThrower();						Instruction exceptionThrower = exceptionThrowerHandle.getInstruction();						// Figure out where the reference operand is in the stack frame.						int consumed = exceptionThrower.consumeStack(classContext.getConstantPoolGen());						if (consumed == Constants.UNPREDICTABLE)							throw new DataflowAnalysisException("Unpredictable stack consumption for " + exceptionThrower);						// Get the stack values at entry to the null check.						IsNullValueFrame frame = invDataflow.getStartFact(basicBlock);						// Could the reference be null?						IsNullValue refValue = frame.getValue(frame.getNumSlots() - consumed);						boolean onExceptionPath = refValue.isException();						if (refValue.isDefinitelyNull()) {							String type = onExceptionPath ? "NP_ALWAYS_NULL_EXCEPTION" : "NP_ALWAYS_NULL";							int priority = onExceptionPath ? LOW_PRIORITY : HIGH_PRIORITY;							reportNullDeref(classContext, method, exceptionThrowerHandle, type, priority);						} else if (refValue.isNullOnSomePath()) {							String type = onExceptionPath ? "NP_NULL_ON_SOME_PATH_EXCEPTION" : "NP_NULL_ON_SOME_PATH";							int priority = onExceptionPath ? LOW_PRIORITY : NORMAL_PRIORITY;							reportNullDeref(classContext, method, exceptionThrowerHandle, type, priority);						}					}				}			}		} catch (DataflowAnalysisException e) {			throw new AnalysisException("FindNullDeref caught exception", e);		} catch (CFGBuilderException e) {			throw new AnalysisException(e.getMessage());		}	}