blob: b8c9841c56fa9eff8df8fbf34c7d7a5e9cf7a11c [file] [log] [blame]
// Copyright (c) 2017, 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.
/// ignore: IMPORT_INTERNAL_LIBRARY
import 'dart:_js_helper';
/// Static field used in tests below.
var field;
/// Read a static field. This adds dependency of static properties to the
/// side effects of the method.
/*element: readStaticField:SideEffects(reads static; writes nothing)*/
readStaticField() => field;
/// Read a static field. If not for the `@NoSideEffects()` annotation this would
/// add dependency of static properties to the side effects of the method.
/*element: readStaticFieldAnnotated:SideEffects(reads nothing; writes nothing)*/
@NoInline()
@NoSideEffects()
readStaticFieldAnnotated() => field;
/*element: main:SideEffects(reads static; writes nothing)*/
main() {
readStaticField();
readStaticFieldAnnotated();
}