-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[3.x] Enable method type information on release builds #59793
Conversation
Do you know if this type information could be made smaller somehow (e.g. by mangling argument names)? |
This is needed for GDScript (and potentially other scripting languages) to properly identify type errors and avoid mismatch between release and debug versions. This increases the release bynary size by about 889 KiB.
This makes sure native methods and properties have the actual type checked to compare for compatibility and inference.
17f1273
to
663978e
Compare
I realized the |
Went from 9.5% increase to 2.3%, very nice! |
Thanks! |
@akien-mga, after this pr, on Windows, editor crash immediately on startup, with following backtrace:
Previous build (v3.5.beta.custom_build [3855154]) works fine. |
Can confirm, (custom) builds compile without error but editor startup is completely broken on Windows with this / todays pr(s). The editor startup window crashes immediately which wasn't the case with yesterdays Windows build. |
This is the same as #53545 but for 3.x.
As a result, there is an increase in the binary size in release builds. For reference, these are the sizes I get in my machine (Intel macOS) compiled using
production=yes
and them stripped:Which is about a 2.32% increase in size.
The absolute increase is a bit bigger than the one in master which is likely because some of which I added here to release was already done in master before my PR.Nevermind, it is way smaller now. I'll do the same on master to reduce the size there too.This also removes the differences in type checking between debug and release for GDScript, which fixes #59723.