diff --git a/dev/core/super/javaemul/internal/ConsoleLogger.java b/dev/core/super/javaemul/internal/ConsoleLogger.java
index 43cc119..ebad921 100644
--- a/dev/core/super/javaemul/internal/ConsoleLogger.java
+++ b/dev/core/super/javaemul/internal/ConsoleLogger.java
@@ -69,6 +69,6 @@
       return "\t" + fnStack.join("\n\t");
     }
     var backingError = t.backingJsObject;
-    return backingError && (backingError.stack || stringify(t.fnStack));
+    return backingError && (backingError.stack || stringify(t["fnStack"]));
   }-*/;
 }
diff --git a/user/src/com/google/gwt/core/client/impl/StackTraceCreator.java b/user/src/com/google/gwt/core/client/impl/StackTraceCreator.java
index 78a8562..fc5dbeb 100644
--- a/user/src/com/google/gwt/core/client/impl/StackTraceCreator.java
+++ b/user/src/com/google/gwt/core/client/impl/StackTraceCreator.java
@@ -71,7 +71,7 @@
     public native void collect(Object error) /*-{
       var seen = {};
       var fnStack = [];
-      error.fnStack= fnStack;
+      error["fnStack"] = fnStack;
 
       // Ignore the collect() call
       var callee = arguments.callee.caller;
@@ -119,7 +119,7 @@
     @Override
     public native void collect(Object error) /*-{
       var fnStack = [];
-      error.fnStack= fnStack;
+      error["fnStack"] = fnStack;
       for (var i = 0; i < $stackDepth; i++) {
         var location = $location[i];
         var fn = $stack[i];
@@ -359,7 +359,7 @@
   }-*/;
 
   private static native JsArrayString getFnStack(Object e) /*-{
-    return (e && e.fnStack) ? e.fnStack : [];
+    return (e && e["fnStack"]) ? e["fnStack"] : [];
   }-*/;
 
   private static native String getFunctionName(JavaScriptObject fn) /*-{
