<@UKPEELJCW> AFAIK `SyntheticResolveExtension` is...
# compiler
m
@dmitriy.novozhilov AFAIK
SyntheticResolveExtension
is executed as a part of analysis phase, in frontend. Which block in your diagram in https://kotlinlang.slack.com/archives/C7L3JB43G/p1615394755006000 is responble for its execution? Do I have the complete PSI with BindingContex?
d
This is not mine diagram actually. Mine is here: https://kotlinlang.slack.com/archives/C7L3JB43G/p1615453039009500?thread_ts=1615394755.006000&amp;cid=C7L3JB43G And in it
SyntheticResolveExtension
works in
frontend
part
Basically this extension point is integrated to member scopes of classes, so plugins can provide new declaration when compiler tries to resolve something (like call
foo()
)
👍 1
m
OK, so its called before resolution ?
so this would my graphical representation(only IR). orange is analyze and green generate
d
OK, so its called before resolution ?
No, it is called during resolution
👍 1
And also in PSI2IR phase to collect all declaration which should be generated, but which were not referenced during resolve