// 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. // @dart=2.9 /*@testedFeatures=inference*/ library test; class Foo { int foo(int x) => x; } test() { dynamic d = new Foo(); var /*@ type=int* */ get_hashCode = d. /*@target=Object.hashCode*/ hashCode; var /*@ type=dynamic */ call_hashCode = d. /*@target=Object.hashCode*/ hashCode(); var /*@ type=String* */ call_toString = d. /*@target=Object.toString*/ toString(); var /*@ type=dynamic */ call_toStringArg = d.toString(color: "pink"); var /*@ type=dynamic */ call_foo0 = d.foo(); var /*@ type=dynamic */ call_foo1 = d.foo(1); var /*@ type=dynamic */ call_foo2 = d.foo(1, 2); var /*@ type=dynamic */ call_nsm0 = d.noSuchMethod(); var /*@ type=dynamic */ call_nsm1 = d. /*@target=Object.noSuchMethod*/ noSuchMethod(null); var /*@ type=dynamic */ call_nsm2 = d.noSuchMethod(null, null); var /*@ type=bool* */ equals_self = d /*@target=Object.==*/ == d; var /*@ type=bool* */ equals_null = d /*@target=Object.==*/ == null; var /*@ type=bool* */ null_equals = null /*@target=Object.==*/ == d; var /*@ type=bool* */ not_equals_self = d /*@target=Object.==*/ != d; var /*@ type=bool* */ not_equals_null = d /*@target=Object.==*/ != null; var /*@ type=bool* */ null_not_equals = null /*@target=Object.==*/ != d; } main() {}