| # Copyright (c) 2017, 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.md file. |
| |
| main.dart.patch: | |
| // Similiar to constant_retaining_2, but tests that constant handling is still |
| // correct even if an unrelated constant is introduced and removed again. |
| var constant; |
| |
| class Foo { |
| const Foo(); |
| } |
| |
| class Bar { |
| const Bar(); |
| } |
| |
| class C { |
| foo() { |
| <<<< ["v1", "true"] |
| print("v1"); |
| constant = const Foo(); |
| ==== ["v2", "false", "true"] |
| print("v2"); |
| print(constant == const Bar()); |
| ==== ["v3", "true"] |
| print("v3"); |
| >>>> |
| print(constant == const Foo()); |
| } |
| } |
| |
| main() { |
| new C().foo(); |
| } |