| Index: sdk/lib/_internal/compiler/js_lib/js_array.dart
|
| diff --git a/sdk/lib/_internal/compiler/js_lib/js_array.dart b/sdk/lib/_internal/compiler/js_lib/js_array.dart
|
| index 2afabdd98e9694296f1f83ac3e377ba50042a0c7..d706b7512780c72e7bc400f4396d384557c79c05 100644
|
| --- a/sdk/lib/_internal/compiler/js_lib/js_array.dart
|
| +++ b/sdk/lib/_internal/compiler/js_lib/js_array.dart
|
| @@ -83,8 +83,7 @@ class JSArray<E> extends Interceptor implements List<E>, JSIndexable {
|
| // to know if the property exists.
|
| JS('void', r'#.fixed$length = Array', list);
|
| JS('void', r'#.immutable$list = Array', list);
|
| - // TODO(23309): Make it detectable that the list has fixed length.
|
| - return JS('JSArray', '#', list);
|
| + return JS('JSUnmodifiableArray', '#', list);
|
| }
|
|
|
| checkMutable(reason) {
|
| @@ -613,6 +612,7 @@ class JSArray<E> extends Interceptor implements List<E>, JSIndexable {
|
| class JSMutableArray<E> extends JSArray<E> implements JSMutableIndexable {}
|
| class JSFixedArray<E> extends JSMutableArray<E> {}
|
| class JSExtendableArray<E> extends JSMutableArray<E> {}
|
| +class JSUnmodifiableArray<E> extends JSArray<E> {} // Already is JSIndexable.
|
|
|
|
|
| /// An [Iterator] that iterates a JSArray.
|
|
|