2007-08-14 | paulb | file changeset files shortlog | Introduced a metadata stack (for frame/argument pointers). Added some code generation support for invocations. |
paulb@242 | 1 | #!/usr/bin/env python |
paulb@242 | 2 | |
paulb@242 | 3 | class A: |
paulb@242 | 4 | def m(self): |
paulb@242 | 5 | return |
paulb@242 | 6 | |
paulb@242 | 7 | def test(): |
paulb@242 | 8 | a1 = A() |
paulb@242 | 9 | a2 = A() |
paulb@242 | 10 | m1 = a1.m |
paulb@242 | 11 | m2 = a2.m |
paulb@242 | 12 | if 1: |
paulb@242 | 13 | m = m1 |
paulb@242 | 14 | else: |
paulb@242 | 15 | m = m2 |
paulb@242 | 16 | m() |
paulb@242 | 17 | |
paulb@242 | 18 | a1 = A() |
paulb@242 | 19 | a2 = A() |
paulb@242 | 20 | m1 = a1.m |
paulb@242 | 21 | m2 = a2.m |
paulb@242 | 22 | if 1: |
paulb@242 | 23 | m = m1 |
paulb@242 | 24 | else: |
paulb@242 | 25 | m = m2 |
paulb@242 | 26 | m() |
paulb@242 | 27 | |
paulb@242 | 28 | test() |
paulb@242 | 29 | |
paulb@242 | 30 | # vim: tabstop=4 expandtab shiftwidth=4 |