bug fix for stephen
authorbdemsky <bdemsky>
Fri, 1 Apr 2011 00:20:42 +0000 (00:20 +0000)
committerbdemsky <bdemsky>
Fri, 1 Apr 2011 00:20:42 +0000 (00:20 +0000)
Robust/src/Analysis/Pointer/Pointer.java

index 13dd2844ff3f4bd0be105a997a9cb6d39727c301..c8eb7bbd712eb8ee8985ae4cde707013efca64eb 100644 (file)
@@ -1178,6 +1178,9 @@ public class Pointer implements HeapAnalysis{
       MySet<Edge> returnedge=delta.varedgeadd.get(returntmp);
       if (returnedge!=null)
        for(Edge e:returnedge) {
+         //skip the edge if types don't allow it...
+         if (!typeUtil.isSuperorType(fcall.getReturnTemp().getType(), e.dst.getType()))
+           continue;
          Edge newedge=e.copy();
          newedge.srcvar=fcall.getReturnTemp();
          if (seseCallers!=null)