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

import "package:expect/expect.dart";
import "compiler_annotations.dart";

class A {
  int field;

  @DontInline
  A(param) {
    // Currently defeat inlining by using a closure.
    var bar = () => 42;     
    field = param + 42;
  }
  A.redirect() : this('foo');
}

main() {
  Expect.equals(42 + 42, new A(42).field);
  Expect.throws(() => new A.redirect(), (e) => e is ArgumentError);
}

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

import "package:expect/expect.dart";
import "compiler_annotations.dart";

class A {
  int field;

  @DontInline
  A(param) {
    // Currently defeat inlining by using a closure.
    var bar = () => 42;     
    field = param + 42;
  }
  A.redirect() : this('foo');
}

main() {
  Expect.equals(42 + 42, new A(42).field);
  Expect.throws(() => new A.redirect(),
                (e) => e is ArgumentError || e is TypeError);
}

Fix test for checked mode.
Fix test for checked mode.

Review URL: https://codereview.chromium.org//22862008

git-svn-id: c93d8a2297af3b929165606efe145742a534bc71@26118 260f80e4-7a28-3924-810f-c04153c831b5
