You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We currently emit function forward declarations for totally unused/unreferenced function forward declarations.
This is unnecessary & we should avoid doing it, by having function and other entities emitted lazily - starting at the definitions, emitting declarations for anything those definitions call. Some of this is already implemented for emitting specialized generics and could be generalized further to handle the non-generic cases lazily as well.
(this was originally discovered with a crash on code like this: class C; fn F(c: C); where C has not been completed, has no value representation and lowering crashes expecting there to be one - this case may be fixed in other ways, though)
Description of the bug:
We currently emit function forward declarations for totally unused/unreferenced function forward declarations.
This is unnecessary & we should avoid doing it, by having function and other entities emitted lazily - starting at the definitions, emitting declarations for anything those definitions call. Some of this is already implemented for emitting specialized generics and could be generalized further to handle the non-generic cases lazily as well.
(this was originally discovered with a crash on code like this:
class C; fn F(c: C);
whereC
has not been completed, has no value representation and lowering crashes expecting there to be one - this case may be fixed in other ways, though)Discussed on discord starting here: https://discord.com/channels/655572317891461132/655578254970716160/1344750580840529982
The text was updated successfully, but these errors were encountered: