diff --git a/user/super/com/google/gwt/emul/java/util/ArrayDeque.java b/user/super/com/google/gwt/emul/java/util/ArrayDeque.java
index 694593f..29b4a5e 100644
--- a/user/super/com/google/gwt/emul/java/util/ArrayDeque.java
+++ b/user/super/com/google/gwt/emul/java/util/ArrayDeque.java
@@ -150,11 +150,7 @@
     return Integer.highestOneBit(num) << 1;
   }
 
-  /**
-   * This field holds a JavaScript array.
-   */
-  @SuppressWarnings("unchecked")
-  private E[] array = (E[]) new Object[MIN_INITIAL_CAPACITY];
+  private E[] array;
 
   /**
    * The index of the element at the head of the deque (which is the
@@ -170,6 +166,11 @@
   private int tail;
 
   public ArrayDeque() {
+    this.array = (E[]) new Object[MIN_INITIAL_CAPACITY];
+  }
+
+  public ArrayDeque(int numElements) {
+    this.array = (E[]) new Object[nextArrayLength(numElements)];
   }
 
   public ArrayDeque(Collection<? extends E> c) {
@@ -177,10 +178,6 @@
     addAll(c);
   }
 
-  public ArrayDeque(int numElements) {
-    ArrayHelper.setLength(array, nextArrayLength(numElements));
-  }
-
   @Override
   public boolean add(E e) {
     addLast(e);
