The type of the 'left' argument was being used for the selection
of which comparison function to use.  This does not agree with the
typical usage of the second argument to is() to mean the expected
value (as in English).
---
 runtime/parrot/library/Test/More.pir |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/runtime/parrot/library/Test/More.pir 
b/runtime/parrot/library/Test/More.pir
index 51660ea..fd297ab 100644
--- a/runtime/parrot/library/Test/More.pir
+++ b/runtime/parrot/library/Test/More.pir
@@ -258,11 +258,11 @@ add more.
     .local int pass
     pass = 0
 
-       .local string l_type
-       l_type = typeof left
+       .local string r_type
+       r_type = typeof right
 
-       if l_type == 'Float' goto num_compare
-       if l_type == 'Int'   goto num_compare
+       if r_type == 'Float' goto num_compare
+       if r_type == 'Int'   goto num_compare
        goto string_compare
 
   num_compare:

Reply via email to