Index: runtime/lib/growable_array.dart |
diff --git a/runtime/lib/growable_array.dart b/runtime/lib/growable_array.dart |
index abdbb9d4959258209678f6b858f8049ebe32c66f..eaf538b4d7885121a93404e034ce74fae1242966 100644 |
--- a/runtime/lib/growable_array.dart |
+++ b/runtime/lib/growable_array.dart |
@@ -8,14 +8,16 @@ class GrowableObjectArray<T> implements List<T> { |
"GrowableObjectArray can only be allocated by the VM"); |
} |
- E removeAt(int index) { |
- E result = this[index]; |
+ T removeAt(int index) { |
+ if (index is! int) throw new IllegalArgumentException(index); |
+ T result = this[index]; |
+ int newLength = this.length - 1; |
Arrays.copy(this, |
index + 1, |
this, |
index, |
- this.length - index - 1); |
- this.length = this.length - 1; |
+ newLength - index); |
+ this.length = newLength; |
return result; |
} |