Author: allison
Date: Thu Oct  4 00:10:58 2007
New Revision: 21815

Modified:
   branches/pdd15oo/t/pdd15oo/objects.t

Log:
[pdd15oo] Replacing completely frelled up test with original from trunk.


Modified: branches/pdd15oo/t/pdd15oo/objects.t
==============================================================================
--- branches/pdd15oo/t/pdd15oo/objects.t        (original)
+++ branches/pdd15oo/t/pdd15oo/objects.t        Thu Oct  4 00:10:58 2007
@@ -895,75 +895,47 @@
 m
 OUTPUT
 
-pir_output_is( <<'CODE', <<'OUTPUT', "overridden vtables" );
-.sub 'main' :main
-    newclass P1, "Foo"
-    # must add attributes before object instantiation
-    addattribute P1, ".i"
-
-    P3 = P1.'new'()
-    set P3, 1
-    P4 = P1.'new'()
-    set P4, 1
-    P5 = P1.'new'()
-
-    add P5, P3, P4
-    # the print below calls __get_string
-    print P5
-    print "\n"
-    set P4, 41
-    add P5, P3, P4
-    print P5
-    print "\n"
-.end
-
-.namespace [ 'Foo' ]
-
-.sub 'set_integer_native' :vtable :method
-    .param int val
-
-    print "in set_integer\n"
-    new P6, 'Integer'
-    set P6, val
-    setattribute self, ".i", P6
-
-    .return ()
-.end
-
-.sub 'add' :multi(PMC, PMC) :method
-    .param pmc left
-    .param pmc right
-
-    print "in add\n"
-    getattribute P10, self, ".i"
-    getattribute P11, left, ".i"
-    new P12, 'Integer'
-    add P12, P10, P11
-    setattribute P7, ".i", right
-
-    .return( P7 )
+pir_output_is( <<'CODE', <<'OUTPUT', "PMC as classes - overridden mmd methods" 
);
+.sub main :main
+  .local pmc myint
+  get_class $P0, "Integer"
+  subclass myint, $P0, "MyInt"
+  .local pmc i
+  .local pmc j
+  .local pmc k
+  $I0 = find_type "MyInt"
+  i = new $I0
+  j = new $I0
+  k = new $I0
+  i = 6
+  j = 7
+  k = i + j
+  print k
+  print "\n"
+  j = new 'Integer'
+  j = 100
+  k = i + j
+  print k
+  print "\n"
 .end
 
-.sub 'get_string' :vtable :method
-    print "in get_string\n"
-    getattribute P10, self, ".i"
-    set S5, P10
-    set I0, P10
-    ne I0, 2, no_2
-    set S5, "two"
-no_2:
-    .return( S5 )
+.namespace ["MyInt"]
+.sub __add :multi(MyInt, MyInt)
+   .param pmc self
+   .param pmc right
+   .param pmc dest
+   print "in add\n"
+   $P0 = getattribute self, ['Integer'], "proxy"
+   $I0 = $P0
+   $I1 = right
+   $I2 = $I0 + $I1
+   dest = $I2
+   .return(dest)
 .end
 CODE
-in set_integer
-in set_integer
-in add
-in get_string
-two
-in set_integer
 in add
-in get_string
-42
+13
+106
 OUTPUT
 
 # Not sure if this is right or not

Reply via email to