// @dart = 2.9
class Callable {
  call(x) {}
}

class CallableGetter {
  get call => new Callable();
}

main() {}
var callable = new Callable();
var callableGetter = new CallableGetter();
var closure = (x) => x;
var int1 = closure(1);
var int2 = closure.call(1);
var int3 = closure.call.call(1);
var int4 = closure.call.call.call(1);
var nothing1 = closure();
var nothing10 = callableGetter.call();
var nothing11 = callableGetter.call.call();
var nothing12 = callableGetter.call.call.call();
var nothing2 = closure.call();
var nothing3 = closure.call.call();
var nothing4 = closure.call.call.call();
var nothing5 = callable();
var nothing6 = callable.call();
var nothing7 = callable.call.call();
var nothing8 = callable.call.call.call();
var nothing9 = callableGetter();
var string1 = callable(1);
var string2 = callable.call(1);
var string3 = callable.call.call(1);
var string4 = callable.call.call.call(1);
var string5 = callableGetter(1);
var string6 = callableGetter.call(1);
var string7 = callableGetter.call.call(1);
var string8 = callableGetter.call.call.call(1);
