Author: coke
Date: Mon Nov 10 21:45:34 2008
New Revision: 32510

Modified:
   trunk/languages/perl6/src/builtins/any-list.pir
   trunk/languages/perl6/src/builtins/any-num.pir
   trunk/languages/perl6/src/builtins/any-str.pir
   trunk/languages/perl6/src/builtins/cmp.pir
   trunk/languages/perl6/src/builtins/eval.pir
   trunk/languages/perl6/src/builtins/match.pir
   trunk/languages/perl6/src/builtins/math.pir
   trunk/languages/perl6/src/builtins/misc.pir
   trunk/languages/perl6/src/builtins/named-unary.pir
   trunk/languages/perl6/src/builtins/op.pir
   trunk/languages/perl6/src/classes/Any.pir
   trunk/languages/perl6/src/classes/Array.pir
   trunk/languages/perl6/src/classes/Code.pir
   trunk/languages/perl6/src/classes/Complex.pir
   trunk/languages/perl6/src/classes/Hash.pir
   trunk/languages/perl6/src/classes/IO.pir
   trunk/languages/perl6/src/classes/Int.pir
   trunk/languages/perl6/src/classes/List.pir
   trunk/languages/perl6/src/classes/Num.pir
   trunk/languages/perl6/src/classes/Object.pir
   trunk/languages/perl6/src/classes/Pair.pir
   trunk/languages/perl6/src/classes/Range.pir
   trunk/languages/perl6/src/classes/Str.pir
   trunk/languages/perl6/src/classes/Subset.pir
   trunk/languages/perl6/src/parser/expression.pir

Log:
[rakudo] RT #58974 - use of .return as a synonym for .tailcall is [DEPRECATED]


Modified: trunk/languages/perl6/src/builtins/any-list.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/any-list.pir     (original)
+++ trunk/languages/perl6/src/builtins/any-list.pir     Mon Nov 10 21:45:34 2008
@@ -33,7 +33,7 @@
 .sub 'elems' :multi()
     .param pmc values          :slurpy
     $P0 = values.'!flatten'()
-    .return values.'elems'()
+    .tailcall values.'elems'()
 .end
 
 .namespace ['Any']
@@ -65,7 +65,7 @@
 .sub 'join' :multi('String')
     .param string sep
     .param pmc values          :slurpy
-    .return values.'join'(sep)
+    .tailcall values.'join'(sep)
 .end
 
 .namespace ['Any']
@@ -97,7 +97,7 @@
     unless $I0 goto have_by
     by = shift values
   have_by:
-    .return values.'min'(by)
+    .tailcall values.'min'(by)
 .end
 
 
@@ -139,7 +139,7 @@
     unless $I0 goto have_by
     by = shift values
   have_by:
-    .return values.'max'(by)
+    .tailcall values.'max'(by)
 .end
 
 
@@ -184,7 +184,7 @@
     if has_repl goto have_repl
     p_repl = get_hll_global ['Bool'], 'False'
   have_repl:
-    .return values.'pick'(p_num, 'repl'=>p_repl)
+    .tailcall values.'pick'(p_num, 'repl'=>p_repl)
 .end
 
 .sub 'pick' :multi('Whatever')
@@ -196,7 +196,7 @@
     unless p_repl goto no_repl
     die "Infinite lazy pick not implemented"
   no_repl:
-    .return values.'pick'(whatever)
+    .tailcall values.'pick'(whatever)
 .end
 
 .namespace ['Any']
@@ -252,7 +252,7 @@
     die "Infinite lazy pick not implemented"
   no_repl:
     $I0 = self.'elems'()
-    .return self.'pick'($I0)
+    .tailcall self.'pick'($I0)
 .end
 
 
@@ -278,7 +278,7 @@
 .namespace []
 .sub 'reverse' :multi()
     .param pmc values          :slurpy
-    .return values.'reverse'()
+    .tailcall values.'reverse'()
 .end
 
 
@@ -300,7 +300,7 @@
     unless $I0 goto have_by
     by = shift values
   have_by:
-    .return values.'sort'(by)
+    .tailcall values.'sort'(by)
 .end
 
 .namespace ['Any']
@@ -330,7 +330,7 @@
     goto fpa_loop
   fpa_end:
     fpa.'sort'(by)
-    .return 'list'(fpa)
+    .tailcall 'list'(fpa)
 .end
 
 =back

Modified: trunk/languages/perl6/src/builtins/any-num.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/any-num.pir      (original)
+++ trunk/languages/perl6/src/builtins/any-num.pir      Mon Nov 10 21:45:34 2008
@@ -58,12 +58,12 @@
 
 .namespace ['Any']
 .sub 'cis' :method :multi(_)
-    .return 'unpolar'(1.0, self)
+    .tailcall 'unpolar'(1.0, self)
 .end
 
 
 .sub 'int' :method :multi(_)
-    .return self.'truncate'()
+    .tailcall self.'truncate'()
 .end
 
 =item log
@@ -90,7 +90,7 @@
 .namespace ['Any']
 .sub 'polar' :method :multi(_)
     $N0 = self
-    .return 'list'($N0, 0)
+    .tailcall 'list'($N0, 0)
 .end
 
 

Modified: trunk/languages/perl6/src/builtins/any-str.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/any-str.pir      (original)
+++ trunk/languages/perl6/src/builtins/any-str.pir      Mon Nov 10 21:45:34 2008
@@ -386,7 +386,7 @@
 .sub 'split' :multi(_,_)
     .param pmc sep
     .param pmc target
-    .return target.'split'(sep)
+    .tailcall target.'split'(sep)
 .end
 
 .namespace['Any']

Modified: trunk/languages/perl6/src/builtins/cmp.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/cmp.pir  (original)
+++ trunk/languages/perl6/src/builtins/cmp.pir  Mon Nov 10 21:45:34 2008
@@ -16,7 +16,7 @@
     .param num a
     .param num b
     $I0 = iseq a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -24,7 +24,7 @@
     .param num a
     .param num b
     $I0 = isne a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 # Shortcut for infix:!==, so same code
@@ -32,7 +32,7 @@
     .param num a
     .param num b
     $I0 = isne a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -40,7 +40,7 @@
     .param num a
     .param num b
     $I0 = islt a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -48,7 +48,7 @@
     .param num a
     .param num b
     $I0 = isle a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -56,7 +56,7 @@
     .param num a
     .param num b
     $I0 = isgt a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -64,7 +64,7 @@
     .param num a
     .param num b
     $I0 = isge a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -89,14 +89,14 @@
     .param string a
     .param string b
     $I0 = iseq a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 .sub 'infix:!eq' :multi(_,_)
     .param string a
     .param string b
     $I0 = isne a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -104,7 +104,7 @@
     .param string a
     .param string b
     $I0 = isne a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -112,7 +112,7 @@
     .param string a
     .param string b
     $I0 = islt a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -120,7 +120,7 @@
     .param string a
     .param string b
     $I0 = isle a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -128,7 +128,7 @@
     .param string a
     .param string b
     $I0 = isgt a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -136,7 +136,7 @@
     .param string a
     .param string b
     $I0 = isge a, b
-    .return 'prefix:?'($I0)
+    .tailcall 'prefix:?'($I0)
 .end
 
 
@@ -167,7 +167,7 @@
     unless $I0 goto false
     $P0 = a.'WHICH'()
     $P1 = b.'WHICH'()
-    .return 'infix:==='($P0, $P1)
+    .tailcall 'infix:==='($P0, $P1)
   false:
     $P0 = get_hll_global [ 'Bool' ], 'False'
     .return ($P0)
@@ -178,7 +178,7 @@
     .param pmc a
     .param pmc b
     $P0 = 'infix:==='(a, b)
-    .return 'prefix:!'($P0)
+    .tailcall 'prefix:!'($P0)
 .end
 
 
@@ -194,7 +194,7 @@
     .param pmc a
     .param pmc b
     $P0 = 'infix:=:='(a, b)
-    .return 'prefix:!'($P0)
+    .tailcall 'prefix:!'($P0)
 .end
 
 

Modified: trunk/languages/perl6/src/builtins/eval.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/eval.pir (original)
+++ trunk/languages/perl6/src/builtins/eval.pir Mon Nov 10 21:45:34 2008
@@ -37,7 +37,7 @@
   lang_compile:
     .local pmc compiler
     compiler = compreg lang
-    .return compiler.'evalfiles'(filename)
+    .tailcall compiler.'evalfiles'(filename)
 
   lang_parrot:
     load_bytecode filename

Modified: trunk/languages/perl6/src/builtins/match.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/match.pir        (original)
+++ trunk/languages/perl6/src/builtins/match.pir        Mon Nov 10 21:45:34 2008
@@ -15,14 +15,14 @@
 .sub 'infix:~~'
     .param pmc topic
     .param pmc x
-    .return x.ACCEPTS(topic)
+    .tailcall x.ACCEPTS(topic)
 .end
 
 
 .sub 'infix:!~~'
     .param pmc topic
     .param pmc x
-    .return x.REJECTS(topic)
+    .tailcall x.REJECTS(topic)
 .end
 
 =back

Modified: trunk/languages/perl6/src/builtins/math.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/math.pir (original)
+++ trunk/languages/perl6/src/builtins/math.pir Mon Nov 10 21:45:34 2008
@@ -356,7 +356,7 @@
     $S1 = "sin: unrecognized base '"
     $S1 .= $S0
     $S1 .= "'"
-    .return 'die'($S1)
+    .tailcall 'die'($S1)
 .end
 
 

Modified: trunk/languages/perl6/src/builtins/misc.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/misc.pir (original)
+++ trunk/languages/perl6/src/builtins/misc.pir Mon Nov 10 21:45:34 2008
@@ -25,7 +25,7 @@
 
 .sub '=<>'
     $P0 = get_hll_global '@ARGS'
-    .return 'prefix:='($P0)
+    .tailcall 'prefix:='($P0)
 .end
 
 =back

Modified: trunk/languages/perl6/src/builtins/named-unary.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/named-unary.pir  (original)
+++ trunk/languages/perl6/src/builtins/named-unary.pir  Mon Nov 10 21:45:34 2008
@@ -22,13 +22,13 @@
 
 .sub 'HOW'
     .param pmc x
-    .return x.'HOW'()
+    .tailcall x.'HOW'()
 .end
 
 
 .sub 'WHAT'
     .param pmc x
-    .return x.'WHAT'()
+    .tailcall x.'WHAT'()
 .end
 
 

Modified: trunk/languages/perl6/src/builtins/op.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/op.pir   (original)
+++ trunk/languages/perl6/src/builtins/op.pir   Mon Nov 10 21:45:34 2008
@@ -74,7 +74,7 @@
     .param num base
     .param num exp
     $N0 = pow base, exp
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -92,7 +92,7 @@
 
 .sub 'prefix:^?' :multi(_)
     .param pmc a
-    .return 'prefix:!'(a)
+    .tailcall 'prefix:!'(a)
 .end
 
 
@@ -104,7 +104,7 @@
 
 .sub 'prefix:+' :multi('Integer')
     .param num a
-    .return '!upgrade_to_num_if_needed'(a)
+    .tailcall '!upgrade_to_num_if_needed'(a)
 .end
 
 
@@ -118,7 +118,7 @@
 .sub 'prefix:-' :multi('Integer')
     .param num a
     $N0 = neg a
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -155,7 +155,7 @@
     .param num a
     .param num b
     $N0 = a * b
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -174,7 +174,7 @@
     $I0 = floor $N0
     $N1 = $N0 - $I0
     if $N1 != 0 goto upgrade
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
   upgrade:
     .return ($N0)
 .end
@@ -192,7 +192,7 @@
     .param num a
     .param num b
     $N0 = mod a, b
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -271,7 +271,7 @@
     .param num a
     .param num b
     $N0 = a + b
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -287,7 +287,7 @@
     .param num a
     .param num b
     $N0 = a - b
-    .return '!upgrade_to_num_if_needed'($N0)
+    .tailcall '!upgrade_to_num_if_needed'($N0)
 .end
 
 
@@ -360,13 +360,13 @@
 
 .sub 'true' :multi(_)
     .param pmc a
-    .return 'prefix:?'(a)
+    .tailcall 'prefix:?'(a)
 .end
 
 
 .sub 'not' :multi(_)
     .param pmc a
-    .return 'prefix:!'(a)
+    .tailcall 'prefix:!'(a)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Any.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Any.pir   (original)
+++ trunk/languages/perl6/src/classes/Any.pir   Mon Nov 10 21:45:34 2008
@@ -30,7 +30,7 @@
 .sub 'can' :method
     .param pmc x
     $P0 = self.'HOW'()
-    .return $P0.'can'(self, x)
+    .tailcall $P0.'can'(self, x)
 .end
 
 =item isa($x)
@@ -40,7 +40,7 @@
 .sub 'isa' :method
     .param pmc x
     $P0 = self.'HOW'()
-    .return $P0.'isa'(self, x)
+    .tailcall $P0.'isa'(self, x)
 .end
 
 =back

Modified: trunk/languages/perl6/src/classes/Array.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Array.pir (original)
+++ trunk/languages/perl6/src/classes/Array.pir Mon Nov 10 21:45:34 2008
@@ -102,7 +102,7 @@
     test = exists self[$I0]
     if test goto indices_loop
   indices_end:
-    .return 'prefix:?'(test)
+    .tailcall 'prefix:?'(test)
 .end
 
 
@@ -146,7 +146,7 @@
     args.'!flatten'()
     $I0 = elements self
     splice self, args, $I0, 0
-    .return self.'elems'()
+    .tailcall self.'elems'()
 .end
 
 
@@ -178,7 +178,7 @@
     .param pmc args :slurpy
     args.'!flatten'()
     splice self, args, 0, 0
-    .return self.'elems'()
+    .tailcall self.'elems'()
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Code.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Code.pir  (original)
+++ trunk/languages/perl6/src/classes/Code.pir  Mon Nov 10 21:45:34 2008
@@ -95,7 +95,7 @@
     $P0 = getinterp
     $P1 = $P0['lexpad';1]
     $P1['$/'] = match
-    .return 'prefix:!'(match)
+    .tailcall 'prefix:!'(match)
 .end
 
 =item perl()

Modified: trunk/languages/perl6/src/classes/Complex.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Complex.pir       (original)
+++ trunk/languages/perl6/src/classes/Complex.pir       Mon Nov 10 21:45:34 2008
@@ -94,7 +94,7 @@
     $N2 = $N0 + $N1
     magnitude = sqrt $N2
     angle = atan imag, real
-    .return 'list'(magnitude, angle)
+    .tailcall 'list'(magnitude, angle)
 .end
 
 =item sqrt

Modified: trunk/languages/perl6/src/classes/Hash.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Hash.pir  (original)
+++ trunk/languages/perl6/src/classes/Hash.pir  Mon Nov 10 21:45:34 2008
@@ -29,7 +29,7 @@
     unless hash goto hash_done
     unshift args, hash
   hash_done:
-    .return args.'hash'()
+    .tailcall args.'hash'()
 .end
 
 
@@ -54,7 +54,7 @@
 
 .sub 'ACCEPTS' :method
     .param pmc topic
-    .return self.'contains'(topic)
+    .tailcall self.'contains'(topic)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/IO.pir
==============================================================================
--- trunk/languages/perl6/src/classes/IO.pir    (original)
+++ trunk/languages/perl6/src/classes/IO.pir    Mon Nov 10 21:45:34 2008
@@ -200,7 +200,7 @@
 .end
 
 .sub 'get_string' :vtable
-    .return self.'item'()
+    .tailcall self.'item'()
 .end
 
 .sub 'get_iter' :method :vtable

Modified: trunk/languages/perl6/src/classes/Int.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Int.pir   (original)
+++ trunk/languages/perl6/src/classes/Int.pir   Mon Nov 10 21:45:34 2008
@@ -42,7 +42,7 @@
 
 .sub 'ACCEPTS' :method
     .param num topic
-    .return 'infix:=='(topic, self)
+    .tailcall 'infix:=='(topic, self)
 .end
 
 
@@ -86,7 +86,7 @@
 .sub 'infix:===' :multi(Integer,Integer)
     .param int a
     .param int b
-    .return 'infix:=='(a, b)
+    .tailcall 'infix:=='(a, b)
 .end
 
 =back

Modified: trunk/languages/perl6/src/classes/List.pir
==============================================================================
--- trunk/languages/perl6/src/classes/List.pir  (original)
+++ trunk/languages/perl6/src/classes/List.pir  Mon Nov 10 21:45:34 2008
@@ -284,7 +284,7 @@
     .param pmc test
     .param pmc values :slurpy
 
-    .return values.'first'(test)
+    .tailcall values.'first'(test)
 .end
 
 =item fmt
@@ -355,7 +355,7 @@
 .sub 'grep' :multi('Sub')
     .param pmc test
     .param pmc values          :slurpy
-    .return values.'grep'(test)
+    .tailcall values.'grep'(test)
 .end
 
 
@@ -382,12 +382,12 @@
     $I0 = self.'elems'()
     dec $I0
     $P0 = 'infix:..'(0, $I0)
-    .return $P0.'list'()
+    .tailcall $P0.'list'()
 .end
 
 .sub 'keys' :multi()
     .param pmc values          :slurpy
-    .return values.'keys'()
+    .tailcall values.'keys'()
 .end
 
 
@@ -417,7 +417,7 @@
 
 .sub 'kv' :multi()
     .param pmc values          :slurpy
-    .return values.'kv'()
+    .tailcall values.'kv'()
 .end
 
 
@@ -473,7 +473,7 @@
 .sub 'map' :multi('Sub')
     .param pmc expression
     .param pmc values          :slurpy
-    .return values.'map'(expression)
+    .tailcall values.'map'(expression)
 .end
 
 
@@ -503,7 +503,7 @@
 
 .sub 'pairs' :multi()
     .param pmc values          :slurpy
-    .return values.'pairs'()
+    .tailcall values.'pairs'()
 .end
 
 
@@ -565,7 +565,7 @@
 .sub 'reduce' :multi('Sub')
     .param pmc expression
     .param pmc values          :slurpy
-    .return values.'reduce'(expression)
+    .tailcall values.'reduce'(expression)
 .end
 
 
@@ -619,12 +619,12 @@
 .sub 'uniq' :multi(Sub)
     .param pmc comparer
     .param pmc values :slurpy
-    .return values.'uniq'(comparer)
+    .tailcall values.'uniq'(comparer)
 .end
 
 .sub 'uniq' :multi()
     .param pmc values :slurpy
-    .return values.'uniq'()
+    .tailcall values.'uniq'()
 .end
 
 
@@ -643,7 +643,7 @@
 
 .sub 'values' :multi()
     .param pmc values          :slurpy
-    .return values.'!flatten'()
+    .tailcall values.'!flatten'()
 .end
 
 
@@ -662,7 +662,7 @@
 .namespace []
 .sub 'list'
     .param pmc values          :slurpy
-    .return values.'!flatten'()
+    .tailcall values.'!flatten'()
 .end
 
 =item C<infix:,(...)>
@@ -673,7 +673,7 @@
 
 .sub 'infix:,'
     .param pmc args            :slurpy
-    .return args.'!flatten'()
+    .tailcall args.'!flatten'()
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Num.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Num.pir   (original)
+++ trunk/languages/perl6/src/classes/Num.pir   Mon Nov 10 21:45:34 2008
@@ -39,7 +39,7 @@
 
 .sub 'ACCEPTS' :method
     .param num topic
-    .return 'infix:=='(topic, self)
+    .tailcall 'infix:=='(topic, self)
 .end
 
 
@@ -77,7 +77,7 @@
 .sub 'infix:===' :multi(Float,Float)
     .param num a
     .param num b
-    .return 'infix:=='(a, b)
+    .tailcall 'infix:=='(a, b)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Object.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Object.pir        (original)
+++ trunk/languages/perl6/src/classes/Object.pir        Mon Nov 10 21:45:34 2008
@@ -74,7 +74,7 @@
 
 .sub 'hash' :method
     $P0 = self.'list'()
-    .return $P0.'hash'()
+    .tailcall $P0.'hash'()
 .end
 
 =item item()
@@ -376,7 +376,7 @@
 =cut
 
 .sub 'true' :method
- .return 'prefix:?'(self)
+ .tailcall 'prefix:?'(self)
 .end
 
 =item get_bool (vtable)
@@ -400,12 +400,12 @@
 
 .sub 'print' :method
     $P0 = get_hll_global 'print'
-    .return $P0(self)
+    .tailcall $P0(self)
 .end
 
 .sub 'say' :method
     $P0 = get_hll_global 'say'
-    .return $P0(self)
+    .tailcall $P0(self)
 .end
 
 =item WHERE
@@ -427,7 +427,7 @@
 
 .sub 'WHICH' :method
     # For normal objects, this can just be the memory address.
-    .return self.'WHERE'()
+    .tailcall self.'WHERE'()
 .end
 
 =back
@@ -472,11 +472,11 @@
     # For now we won't worry about signature, just if a method exists.
     $I0 = can self, method_name
     if $I0 goto invoke
-    .return '!FAIL'('Undefined value returned by invocation of undefined 
method')
+    .tailcall '!FAIL'('Undefined value returned by invocation of undefined 
method')
 
     # If we do have a method, call it.
   invoke:
-    .return self.method_name(pos_args :flat, named_args :named :flat)
+    .tailcall self.method_name(pos_args :flat, named_args :named :flat)
 .end
 
 
@@ -488,12 +488,12 @@
     # Return an empty list if no methods exist at all.
     $I0 = can self, method_name
     if $I0 goto invoke
-    .return 'list'()
+    .tailcall 'list'()
 
     # Now find all methods and call them - since we know there are methods,
     # we just pass on to infix:.+.
   invoke:
-    .return self.'!.+'(method_name, pos_args :flat, named_args :named :flat)
+    .tailcall self.'!.+'(method_name, pos_args :flat, named_args :named :flat)
 .end
 
 
@@ -552,7 +552,7 @@
     # Get the HOW or the object and do the call on that.
     .local pmc how
     how = self.'HOW'()
-    .return how.method_name(self, pos_args :flat, named_args :flat :named)
+    .tailcall how.method_name(self, pos_args :flat, named_args :flat :named)
 .end
 
 
@@ -612,7 +612,7 @@
 
 .sub 'list' :method
     $P0 = get_hll_global 'list'
-    .return $P0(self)
+    .tailcall $P0(self)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Pair.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Pair.pir  (original)
+++ trunk/languages/perl6/src/classes/Pair.pir  Mon Nov 10 21:45:34 2008
@@ -45,7 +45,7 @@
 
     $P0 = self.value()
 
-    .return topic.$S0($P0)
+    .tailcall topic.$S0($P0)
 .end
 
 =item key
@@ -143,7 +143,7 @@
     key = key.'item'()
     value = value.'item'()
     $P0 = get_hll_global 'Pair'
-    .return $P0.'new'('key'=>key, 'value'=>value)
+    .tailcall $P0.'new'('key'=>key, 'value'=>value)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Range.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Range.pir (original)
+++ trunk/languages/perl6/src/classes/Range.pir Mon Nov 10 21:45:34 2008
@@ -176,18 +176,18 @@
 .namespace ['Range']
 
 .sub 'min' :method
-    .return self.'from'()
+    .tailcall self.'from'()
 .end
 
 .sub 'minmax' :method
     $P0 = self.'from'()
     $P1 = self.'to'()
     $P2 = get_hll_global 'list'
-    .return $P2($P0, $P1)
+    .tailcall $P2($P0, $P1)
 .end
 
 .sub 'max' :method
-    .return self.'to'()
+    .tailcall self.'to'()
 .end
 
 
@@ -304,7 +304,7 @@
     .param pmc to
     .local pmc proto
     proto = get_hll_global 'Range'
-    .return proto.'new'('from'=>from, 'to'=>to)
+    .tailcall proto.'new'('from'=>from, 'to'=>to)
 .end
 
 .sub 'infix:^..'
@@ -313,7 +313,7 @@
     .local pmc proto, true
     proto = get_hll_global 'Range'
     true = get_hll_global ['Bool'], 'True'
-    .return proto.'new'('from'=>from, 'to'=>to, 'from_exclusive'=>true)
+    .tailcall proto.'new'('from'=>from, 'to'=>to, 'from_exclusive'=>true)
 .end
 
 .sub 'infix:..^'
@@ -322,7 +322,7 @@
     .local pmc proto, true
     proto = get_hll_global 'Range'
     true = get_hll_global ['Bool'], 'True'
-    .return proto.'new'('from'=>from, 'to'=>to, 'to_exclusive'=>true)
+    .tailcall proto.'new'('from'=>from, 'to'=>to, 'to_exclusive'=>true)
 .end
 
 .sub 'infix:^..^'
@@ -331,7 +331,7 @@
     .local pmc proto, true
     proto = get_hll_global 'Range'
     true = get_hll_global ['Bool'], 'True'
-    .return proto.'new'('from'=>from, 'to'=>to, 'from_exclusive'=>true, 
'to_exclusive'=>true)
+    .tailcall proto.'new'('from'=>from, 'to'=>to, 'from_exclusive'=>true, 
'to_exclusive'=>true)
 .end
 
 =item prefix:<^>(Any $to)
@@ -343,7 +343,7 @@
 .namespace[]
 .sub 'prefix:^' :multi(_)
     .param pmc to
-    .return 'infix:..^'(0, to)
+    .tailcall 'infix:..^'(0, to)
 .end
 
 =item prefix:<^>(Type $x)
@@ -354,7 +354,7 @@
 
 .sub 'prefix:^' :multi('P6Protoobject')
     .param pmc proto
-    .return proto.'HOW'()
+    .tailcall proto.'HOW'()
 .end
 
 =item prefix:<^>(List @a)
@@ -377,7 +377,7 @@
   iter_loop_end:
 
     # Now just use cross operator to make all the permutations.
-    .return 'infix:X'(ranges)
+    .tailcall 'infix:X'(ranges)
 .end
 
 =back

Modified: trunk/languages/perl6/src/classes/Str.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Str.pir   (original)
+++ trunk/languages/perl6/src/classes/Str.pir   Mon Nov 10 21:45:34 2008
@@ -44,7 +44,7 @@
 
 .sub 'ACCEPTS' :method
     .param string topic
-    .return 'infix:eq'(topic, self)
+    .tailcall 'infix:eq'(topic, self)
 .end
 
 
@@ -148,7 +148,7 @@
 .sub 'infix:===' :multi(String,String)
     .param string a
     .param string b
-    .return 'infix:eq'(a, b)
+    .tailcall 'infix:eq'(a, b)
 .end
 
 

Modified: trunk/languages/perl6/src/classes/Subset.pir
==============================================================================
--- trunk/languages/perl6/src/classes/Subset.pir        (original)
+++ trunk/languages/perl6/src/classes/Subset.pir        Mon Nov 10 21:45:34 2008
@@ -30,7 +30,7 @@
 .sub 'ACCEPTS' :method
     .param pmc topic
     $P0 = getattribute self, '$!condition'
-    .return $P0(topic)
+    .tailcall $P0(topic)
 .end
 
 # Local Variables:

Modified: trunk/languages/perl6/src/parser/expression.pir
==============================================================================
--- trunk/languages/perl6/src/parser/expression.pir     (original)
+++ trunk/languages/perl6/src/parser/expression.pir     Mon Nov 10 21:45:34 2008
@@ -37,7 +37,7 @@
     .local pmc optable
 
     optable = get_hll_global ['Perl6';'Grammar'], "$optable"
-    .return optable."parse"(self, 'rulename'=>'EXPR', adverbs :named :flat)
+    .tailcall optable."parse"(self, 'rulename'=>'EXPR', adverbs :named :flat)
 .end
 
 .sub "EXPR" :method :multi(_,_)
@@ -46,7 +46,7 @@
     .local pmc optable
 
     optable = get_hll_global ['Perl6';'Grammar'], "$optable"
-    .return optable."parse"(self, 'rulename'=>'EXPR', 'tighter'=>tighter, 
adverbs :named :flat)
+    .tailcall optable."parse"(self, 'rulename'=>'EXPR', 'tighter'=>tighter, 
adverbs :named :flat)
 .end
 
 =back

Reply via email to