// Copyright (c) 2012, 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.

library IsolateImportNegativeTest;

// Omitting the following import is an error:
/* // //# 01: runtime error, static type warning
import 'dart:isolate';
*/ // //# 01: continued
import 'package:async_helper/async_helper.dart';

void entry(msg) {}

main() {
  asyncStart();
  Isolate.spawn(entry, null).whenComplete(asyncEnd);
}
