Revision: 20835
Author:   [email protected]
Date:     Thu Apr 17 09:30:41 2014 UTC
Log:      Fix handlification bug in test

[email protected], [email protected]
BUG=

Review URL: https://codereview.chromium.org/240603004
http://code.google.com/p/v8/source/detail?r=20835

Modified:
 /branches/bleeding_edge/test/cctest/test-types.cc

=======================================
--- /branches/bleeding_edge/test/cctest/test-types.cc Wed Apr 16 16:16:37 2014 UTC +++ /branches/bleeding_edge/test/cctest/test-types.cc Thu Apr 17 09:30:41 2014 UTC
@@ -272,22 +272,28 @@
         int i = rng_.NextInt(static_cast<int>(values.size()));
         return Type::Constant(values[i], region_);
       }
-      case 3:  // array
-        return Type::Array(Fuzz(depth / 2), region_);
+      case 3: {  // array
+        TypeHandle element = Fuzz(depth / 2);
+        return Type::Array(element, region_);
+      }
       case 4:
       case 5:
       case 6: {  // function
-        TypeHandle type = Type::Function(
-            Fuzz(depth / 2), Fuzz(depth / 2), rand() % 3, region_);
+        TypeHandle result = Fuzz(depth / 2);
+        TypeHandle receiver = Fuzz(depth / 2);
+        int arity = rng_.NextInt(3);
+        TypeHandle type = Type::Function(result, receiver, arity, region_);
         for (int i = 0; i < type->AsFunction()->Arity(); ++i) {
-          type->AsFunction()->InitParameter(i, Fuzz(depth - 1));
+          TypeHandle parameter = Fuzz(depth - 1);
+          type->AsFunction()->InitParameter(i, parameter);
         }
       }
       default: {  // union
         int n = rng_.NextInt(10);
         TypeHandle type = None;
         for (int i = 0; i < n; ++i) {
-          type = Type::Union(type, Fuzz(depth - 1), region_);
+          TypeHandle operand = Fuzz(depth - 1);
+          type = Type::Union(type, operand, region_);
         }
         return type;
       }

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to