2016-10-14 | Paul Boddie | raw annotate files changeset graph | Introduced access mode information for unambiguously-traversed attributes so that the appropriate instruction can be generated. Removed the generation of augmented attribute access plans and the computation of general attribute position ambiguity, since the information will not be used: in cases where ambiguity might need to be determined, attributes must be checked to determine their exact nature even if unambiguous. |
1 class C: 2 l = [2] 3 s = "test" 4 def __init__(self, x): 5 self.x = x 6 self.y = 3 7 self.z = "z" 8 9 c = C([1]) 10 x = c.x 11 f = c.x.__len__ 12 result1 = f() 13 14 y = c.l 15 g = c.l.__len__ 16 result2 = g() 17 18 yy = C.l 19 gg = C.l.__len__ 20 result22 = gg() 21 22 z = c.s 23 h = c.s.__len__ 24 result3 = h() 25 26 zz = C.s 27 hh = C.s.__len__ 28 result33 = hh() 29 30 a = c.y 31 b = c.z 32 i = c.z.__len__ 33 result4 = i()