Implement implicit call method tear-offs with extension typed receivers #54339
Labels
area-meta
Cross-cutting, high-level issues (for tracking many other implementation issues, ...).
implementation
Track the implementation of a specific feature (use on area-meta issue, not issues for each tool)
Uh oh!
There was an error while loading. Please reload this page.
This implementation issue is associated with the proposal in dart-lang/language#3467, that is, the proposal to support implicit
call
method tear-offs for receivers whose static type is an extension type.Consider the following example:
At (1) in this example, we evaluate the expression
Ext(C())
with a context type ofFunction
. Following the treatment of a receiver of an interface type that has a method namedcall
, this expression should be implicitly transformed intoExt(C()).call
, and the resulting program would then be type correct.(Of course,
C()
will be subject to the same transformation because that's the case that we already support, yieldingExt(C().call).call
.)This issue serves as a request to implement this feature. It may be implemented in the analyzer already, but the CFE reports an error when
Ext(...)
is encountered with context typeFunction
. I'll create subtask issues for both, and then the analyzer subtask may be trivial.Subtasks:
The text was updated successfully, but these errors were encountered: