public int equivHashCode() { return getField().equivHashCode(); }
public void inStaticFieldRef(StaticFieldRef sfr) { if (inDefinitionStmt && (definedLocal != null)) { SootField field = sfr.getField(); info.setFieldName(definedLocal, field.getName()); } }
StaticFieldRef v = (StaticFieldRef) fr; try { SootField field = v.getField(); if (field == null) { exceptions.add(new UnitValidationException(unit, body, "Resolved field is null: " + fr.toString()));
return false; return s.getGlobals().contains(sfr.getField());
SootField f = sfr.getField(); if (!f.getDeclaringClass().getName().equals("java.lang.System")) { continue;
protected RWSet addValue(Value v, SootMethod m, Stmt s) { RWSet ret = null; if (v instanceof InstanceFieldRef) { InstanceFieldRef ifr = (InstanceFieldRef) v; PointsToSet base = pa.reachingObjects((Local) ifr.getBase()); ret = new StmtRWSet(); ret.addFieldRef(base, ifr.getField()); } else if (v instanceof StaticFieldRef) { StaticFieldRef sfr = (StaticFieldRef) v; ret = new StmtRWSet(); ret.addGlobal(sfr.getField()); } else if (v instanceof ArrayRef) { ArrayRef ar = (ArrayRef) v; PointsToSet base = pa.reachingObjects((Local) ar.getBase()); ret = new StmtRWSet(); ret.addFieldRef(base, PointsToAnalysis.ARRAY_ELEMENTS_NODE); } return ret; }
StaticFieldRef sfr = (StaticFieldRef) v; ret = new StmtRWSet(); ret.addGlobal(sfr.getField()); } else if (v instanceof ArrayRef) { ArrayRef ar = (ArrayRef) v;
fieldsStaticsParamsAccessed.add(InfoFlowAnalysis.getNodeForFieldRef(sm, sfr.getField())); } else if (ref instanceof InstanceFieldRef) {
String field = ((StaticFieldRef) leftOp).getField().getName();
if (lock instanceof StaticFieldRef) { StaticFieldRef sfrLock = (StaticFieldRef) lock; lockClass = sfrLock.getField().getDeclaringClass(); } else if (lock instanceof NewStaticLock) { DeadlockAvoidanceEdge dae = (DeadlockAvoidanceEdge) lock;
StaticFieldRef sfr = (StaticFieldRef) v; ret = new StmtRWSet(); ret.addGlobal(sfr.getField()); } else if (v instanceof ArrayRef) { ArrayRef ar = (ArrayRef) v;
} else if (l instanceof StaticFieldRef) { StaticFieldRef ref = (StaticFieldRef) l; left = hierarchy.typeNode(ref.getField().getType()); } else { throw new RuntimeException("Unhandled assignment left hand side type: " + l.getClass()); StaticFieldRef ref = (StaticFieldRef) r; if (!left.hasDescendantOrSelf(hierarchy.typeNode(ref.getField().getType()))) { error("Type Error(44)");
} else if (l instanceof StaticFieldRef) { StaticFieldRef ref = (StaticFieldRef) l; left = hierarchy.typeNode(ref.getField().getType()); } else { throw new RuntimeException("Unhandled assignment left hand side type: " + l.getClass()); StaticFieldRef ref = (StaticFieldRef) r; if (!left.hasDescendantOrSelf(hierarchy.typeNode(ref.getField().getType()))) { error("Type Error(44)");