Skip to content

Commit 3582d8a

Browse files
committed
Avoid most boxes in precompilation code (#57986)
- Use `local` where variable names accidentally overlapped and caused boxes - Use `@lock` to avoid closures - Move out some recursive closures to top-level normal function to avoid boxing them - Use explicit boxes (`Ref`) instead of relying on the typeassert on the `Core.Box` because it it hard to determine if a `Core.Box` is benign or not. - Only assign to `io` once to avoid boxing it. - Type assert some `Tuple{Int, Int}` on `IO`. The two remaining boxes after this is `t_print` and `monitor_std`. (cherry picked from commit 4a3eba3)
1 parent a7762c6 commit 3582d8a

File tree

1 file changed

+108
-104
lines changed

1 file changed

+108
-104
lines changed

0 commit comments

Comments
 (0)