Files
sdk/pkg/front_end/testcases/aot/tree_shake/main.dart
T
Johnni Winther 2d63f26ef5 Reland "[cfe] Encode field references as @getters and @setters"
This removes the @fields and @=fields canonical name
encodings that allowed for encoding of conflicting members
and didn't support field<->getter/setter conversion
between dills or between outline and full dill.

TEST=existing tests+add aot expectation tests

Change-Id: I119b0c95f90e456356146cdc2d9241de4c1b4fff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/186680
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2021-03-09 05:47:16 +00:00

41 lines
829 B
Dart

// Copyright (c) 2021, 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 'main_lib.dart';
enum UnusedEnum { a, b }
enum UsedEnum {
unusedValue,
usedValue,
}
usedMethod(UnusedInterface c) {
c.usedInterfaceField = c.usedInterfaceField;
}
unusedMethod() {}
class UnusedInterface {
int? usedInterfaceField;
UnusedInterface(this.usedInterfaceField);
}
class UsedClass implements UnusedInterface {
int? unusedField;
int? usedField;
int? usedInterfaceField;
}
class UnusedClass {}
main() {
usedMethod(new UsedClass()..usedField);
UsedEnum.usedValue;
List<UnusedEnum> list = [];
if (list.isNotEmpty) {
new ConstClass().method(null as dynamic);
}
}