+ newInferLocation.addLocation(fieldLoc);
+
+ NTuple<Location> locTuple = flowGraph.getLocationTuple(flowNode);
+ for (int tidx = 1; tidx < locTuple.size(); tidx++) {
+ Location cur = locTuple.get(tidx);
+ Descriptor enclosingDesc = cur.getDescriptor();
+ Descriptor curDesc = cur.getLocDescriptor();
+ Location inferLocElement;
+ if (curDesc == null) {
+ // in this case, we have a newly generated location.
+ inferLocElement = new Location(enclosingDesc, cur.getLocIdentifier());
+ } else {
+ String fieldLocSymbol =
+ getLocationInfo(enclosingDesc).getInferLocation(curDesc).get(0)
+ .getLocIdentifier();
+ inferLocElement = new Location(enclosingDesc, fieldLocSymbol);
+ inferLocElement.setLocDescriptor(curDesc);
+ }
+ newInferLocation.addLocation(inferLocElement);
+ }