| // Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file | 
 | // for details. All rights reserved. Use of this source code is governed by a | 
 | // BSD-style license that can be found in the LICENSE file. | 
 |  | 
 | import 'package:expect/expect.dart'; | 
 | import 'static_extension_constant_lib.dart' hide b, i, d, s; | 
 | import 'static_extension_constant_lib.dart' as lib show b, i, d, s; | 
 |  | 
 | // Ensure that all expressions in runtimeExtensionCalls invoke | 
 | // an extension method rather than an instance method, such that | 
 | // static_extension_constant_error_test gets an error for them all. | 
 |  | 
 | const dynamic b = lib.b; | 
 | const dynamic i = lib.i; | 
 | const dynamic d = lib.d; | 
 | const dynamic s = lib.s; | 
 |  | 
 | // These expressions should be identical to those in | 
 | // `lib.runtimeExtensionCalls`. | 
 | var dynamicInstanceCalls = <Object>[ | 
 |   ~i, | 
 |   b & b, | 
 |   b | b, | 
 |   b ^ b, | 
 |   i ~/ i, | 
 |   i >> i, | 
 |   i >>> i, | 
 |   i << i, | 
 |   i + i, | 
 |   -i, | 
 |   d - d, | 
 |   d * d, | 
 |   d / d, | 
 |   d % d, | 
 |   d < i, | 
 |   i <= d, | 
 |   d > i, | 
 |   i >= i, | 
 |   s.length, | 
 | ]; | 
 |  | 
 | void main() { | 
 |   for (int i = 0; i < dynamicInstanceCalls.length; ++i) { | 
 |     Expect.notEquals(dynamicInstanceCalls[i], runtimeExtensionCalls[i]); | 
 |   } | 
 | } |