| // Copyright (c) 2014, 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. |
| |
| library lib1; |
| |
| class ConstClass { |
| final x; |
| const ConstClass(this.x); |
| } |
| |
| var x = const ConstClass(const ConstClass(1)); |
| |
| class C { |
| static foo() { |
| () {}(); // Hack to avoid inlining. |
| return 1; |
| } |
| |
| bar() { |
| () {}(); // Hack to avoid inlining. |
| return 1; |
| } |
| } |
| |
| class C1 { |
| static var foo = const {}; |
| var bar = const {}; |
| } |
| |
| class C2 { |
| static var foo = new Map<int, int>.from({1: 2}); |
| var bar = new Map<int, int>.from({1: 2}); |
| } |
| |
| class C3 { |
| static final foo = const ConstClass(const ConstClass(1)); |
| final bar = const ConstClass(const ConstClass(1)); |
| } |
| |
| class C4 { |
| static final foo = new Map<ConstClass, ConstClass>.from({x: x}); |
| final bar = new Map<ConstClass, ConstClass>.from({x: x}); |
| } |
| |
| class C5 { |
| static const foo = const [ |
| const {1: 3} |
| ]; |
| bar() { |
| () {}(); // Hack to avoid inlining. |
| return 1; |
| } |
| } |