| // 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 I1 {} | |
| class I2 {} | |
| class A implements I1, I2 {} | |
| class B implements I1, I2 {} | |
| /*member: foo:params=1*/ | |
| @pragma('dart2js:noInline') | |
| void foo(I1 x) {} | |
| /*member: bar:params=1*/ | |
| @pragma('dart2js:noInline') | |
| void bar(I2 x) {} | |
| /*member: main: | |
| calls=[ | |
| bar(1), | |
| bar(1), | |
| foo(1), | |
| foo(1)], | |
| params=0 | |
| */ | |
| main() { | |
| dynamic f = bar; | |
| foo(new A()); | |
| foo(new B()); | |
| f(new A()); | |
| f(new B()); | |
| } |