// 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.

/// Prints different basic literals.
///
/// The log of this test is used to verify print is evaluated with the correct
/// arguments.
main() {
  print('hello');
  print(1);
  print(true);
  print(4.2);
  print(null);
}
