blob: 76e71deddd7247315d048f28b13e251bd59e32e6 [file] [log] [blame]
# 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.md file.
# Compile an application with a const class with a initializer assert that would
# fail once evaluated. Everything should be fine as there is no usage.
# Add another const class that references it. Error.
# Fixing that should fix everything.
type: newworld
worlds:
- entry: main.dart
sources:
main.dart: |
import 'lib.dart';
main() {
foo();
}
lib.dart: |
class Foo {
const Foo(int i) : assert(i > 0);
}
foo() {
new Foo(0);
}
expectedLibraryCount: 2
errors: false
- entry: main.dart
errors: true
worldType: updated
invalidate:
- main.dart
sources:
main.dart: |
import 'lib.dart';
import 'lib2.dart';
main() {
foo();
bar();
}
lib2.dart: |
import 'lib.dart';
class Bar {
final Foo x;
const Bar() : x = const Foo(0);
}
bar() {}
expectInitializeFromDill: false
expectedLibraryCount: 3
- entry: main.dart
errors: false
worldType: updated
invalidate:
- lib2.dart
sources:
lib2.dart: |
import 'lib.dart';
class Bar {
final Foo x;
const Bar() : x = const Foo(1);
}
bar() {}
expectInitializeFromDill: false
expectedLibraryCount: 3