Special treat casting for native Array & Object.

Change-Id: I2f3223a24825de05cc2fefcd86af9a57b54279a5
diff --git a/dev/core/super/com/google/gwt/dev/jjs/intrinsic/com/google/gwt/lang/Cast.java b/dev/core/super/com/google/gwt/dev/jjs/intrinsic/com/google/gwt/lang/Cast.java
index afb3553..993ffc1 100644
--- a/dev/core/super/com/google/gwt/dev/jjs/intrinsic/com/google/gwt/lang/Cast.java
+++ b/dev/core/super/com/google/gwt/dev/jjs/intrinsic/com/google/gwt/lang/Cast.java
@@ -239,6 +239,15 @@
         return false;
     }
 
+    if (jsTypeStr == "Object") {
+      // TODO(rluble): Handle this case in the compiler side.
+      return true;
+    } else if (jsTypeStr == "Array" ) {
+      // TODO(rluble): remove array special handling once
+      // instanceOf can be customized for native classes.
+      return Array.isArray(obj);
+    }
+
     var jsType = $wnd;
     for (var i = 0, parts = jsTypeStr.split("."), l = parts.length; i < l ; i++) {
       jsType = jsType && jsType[parts[i]];