| // 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 file. |
| // |
| // VMOptions=--verify-entry-points=true |
| |
| import 'dart:io'; |
| import 'dart:convert'; |
| import 'dart:math'; |
| import 'package:path/path.dart'; |
| import 'package:expect/expect.dart'; |
| import 'dart-ext:entrypoints_verification_test_extension'; |
| |
| void RunTest() native "RunTest"; |
| |
| main() { |
| RunTest(); |
| |
| new C(); |
| new D(); |
| } |
| |
| class C {} |
| |
| @pragma("vm:entry-point") |
| class D { |
| D(); |
| |
| @pragma("vm:entry-point") |
| D.defined(); |
| |
| @pragma("vm:entry-point") |
| factory D.fact() => E.ctor(); |
| |
| void fn0() {} |
| |
| @pragma("vm:entry-point") |
| void fn1() {} |
| |
| @pragma("vm:entry-point", "get") |
| void fn1_get() {} |
| |
| @pragma("vm:entry-point", "call") |
| void fn1_call() {} |
| |
| static void fn2() {} |
| |
| @pragma("vm:entry-point") |
| static void fn3() {} |
| |
| @pragma("vm:entry-point", "call") |
| static void fn3_call() {} |
| |
| @pragma("vm:entry-point", "get") |
| static void fn3_get() {} |
| |
| void Function() fld0; |
| |
| @pragma("vm:entry-point") |
| void Function() fld1; |
| |
| @pragma("vm:entry-point", "get") |
| void Function() fld2; |
| |
| @pragma("vm:entry-point", "set") |
| void Function() fld3; |
| } |
| |
| void fn0() {} |
| |
| @pragma("vm:entry-point") |
| void fn1() {} |
| |
| @pragma("vm:entry-point", "get") |
| void fn1_get() {} |
| |
| @pragma("vm:entry-point", "call") |
| void fn1_call() {} |
| |
| class E extends D { |
| E.ctor(); |
| } |
| |
| @pragma("vm:entry-point") |
| class F { |
| static void Function() fld0; |
| |
| @pragma("vm:entry-point") |
| static void Function() fld1; |
| |
| @pragma("vm:entry-point", "get") |
| static void Function() fld2; |
| |
| @pragma("vm:entry-point", "set") |
| static void Function() fld3; |
| } |
| |
| void Function() fld0; |
| |
| @pragma("vm:entry-point") |
| void Function() fld1; |
| |
| @pragma("vm:entry-point", "get") |
| void Function() fld2; |
| |
| @pragma("vm:entry-point", "set") |
| void Function() fld3; |