blob: 9e6edbde3b2eae8a00e0cc93e908db5665ff3331 [file] [log] [blame]
// 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.
class Class {
Class next;
}
main() {
assert1(null);
assert2(null);
assert3(null);
assert4(null);
assert5(null);
assert6(null);
assert7(null);
assert8(null);
}
assert1(Class c) {
assert(/*Class*/ c /*invoke: bool*/ != null);
/*Class*/ c.next;
}
assert2(Class c) {
assert(/*Class*/ c /*invoke: bool*/ == null);
/*Null*/ c.next;
}
assert3(Class c) {
bool b;
assert(/*Class*/ c /*invoke: bool*/ != null);
if (/*bool*/ b) return;
/*Class*/ c.next;
}
assert4(Class c) {
bool b;
assert(/*Class*/ c /*invoke: bool*/ == null);
if (/*bool*/ b) return;
/*Null*/ c.next;
}
assert5(dynamic c) {
assert(/*dynamic*/ c is Class);
/*Class*/ c.next;
}
assert6(dynamic c) {
assert(/*dynamic*/ c is! Class);
/*dynamic*/ c.next;
}
assert7(dynamic c) {
bool b;
assert(/*dynamic*/ c is Class);
if (/*bool*/ b) return;
/*Class*/ c.next;
}
assert8(dynamic c) {
bool b;
assert(/*dynamic*/ c is! Class);
if (/*bool*/ b) return;
/*dynamic*/ c.next;
}