|  | // Copyright (c) 2013, 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. | 
|  |  | 
|  | // Regression test for dart2js, that used to minify a captured | 
|  | // variable's name to the same name as inherited Object methods. | 
|  |  | 
|  | List<dynamic> array = [new A()]; | 
|  |  | 
|  | class A { | 
|  | operator ==(other) { | 
|  | return true; | 
|  | } | 
|  | } | 
|  |  | 
|  | foo() { | 
|  | // Use lots of variables, to maximize the chance of collisions. | 
|  | var a = 42; | 
|  | var b = 42; | 
|  | var c = 42; | 
|  | var d = 42; | 
|  | var e = 42; | 
|  | var f = 42; | 
|  | var g = 42; | 
|  | var h = 42; | 
|  | var i = 42; | 
|  | var j = 42; | 
|  | var k = 42; | 
|  | var l = 42; | 
|  | var m = 42; | 
|  | var n = 42; | 
|  | array[0] = () { | 
|  | return a + b + c + d + e + f + g + h + i + j + k + l + m + n; | 
|  | }; | 
|  | } | 
|  |  | 
|  | main() { | 
|  | foo(); | 
|  | if (array[0] == new A()) { | 
|  | throw 'Test failed'; | 
|  | } | 
|  | if (array[0]() != 42 * 14) { | 
|  | throw 'Test failed'; | 
|  | } | 
|  | } |