diff -r 26e3035cdffc -r 43287eef2fff src/TypeManager.cpp --- a/src/TypeManager.cpp Mon Dec 24 02:49:20 2012 -0800 +++ b/src/TypeManager.cpp Mon Dec 24 02:56:02 2012 -0800 @@ -43,6 +43,10 @@ if (!uncheckedType_) return false; + stringType_ = Type::NewString(zone_); + if (!stringType_) + return false; + if ((primitiveTypes_[PrimitiveType_Int32] = Type::NewPrimitive(zone_, PrimitiveType_Int32)) == NULL) return false; if ((primitiveTypes_[PrimitiveType_Float] = Type::NewPrimitive(zone_, PrimitiveType_Float)) == NULL) @@ -53,8 +57,6 @@ return false; if ((primitiveTypes_[PrimitiveType_Bool] = Type::NewPrimitive(zone_, PrimitiveType_Bool)) == NULL) return false; - if ((primitiveTypes_[PrimitiveType_String] = Type::NewPrimitive(zone_, PrimitiveType_String)) == NULL) - return false; Local type(zone_); for (unsigned i = 0; i < PrimitiveTypes_Total; i++) { @@ -100,6 +102,7 @@ { visitor->visit(voidType_.address()); visitor->visit(uncheckedType_.address()); + visitor->visit(stringType_.address()); for (unsigned i = 0; i < PrimitiveTypes_Total; i++) { visitor->visit(primitiveTypes_[i].address()); visitor->visit(referenceTypes_[i].address());