Files
sdk/tests/compiler/dart2js/inference/inference_data/cannot_throw.dart
T
Johnni Winther 013cf68624 Replace js_helper annotations with @pragma
@ForceInline is still used by dart:html, will be removed in a later CL.

Change-Id: I480325fe91cc6baefb17ead49f839442e023d441
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95160
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2019-03-05 08:56:18 +00:00

26 lines
705 B
Dart

// Copyright (c) 2018, 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.
main() {
noThrows();
noInline();
throws();
}
// We trust the annotation.
/*element: noThrows:no-throw*/
@pragma('dart2js:noThrows')
@pragma(
'dart2js:noInline') // Required for the @pragma('dart2js:noThrows') annotation.
noThrows() => throw '';
// Check that the @pragma('dart2js:noInline') annotation has no impact on its own.
/*element: noInline:*/
@pragma('dart2js:noInline')
noInline() {}
// TODO(johnniwinther): Should we infer this?
/*element: throws:*/
throws() => 0;