-
Notifications
You must be signed in to change notification settings - Fork 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
Implement SIP-61 @unroll
annotation
#21693
base: main
Are you sure you want to change the base?
Commits on Oct 7, 2024
-
SIP 61 - copy phase and annotation from com-lihaoyi/unroll
Co-authored-by: Jamie Thompson <[email protected]> Co-authored-by: Li Haoyi <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ee7e6e4 - Browse repository at this point
Copy the full SHA ee7e6e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6614c0f - Browse repository at this point
Copy the full SHA 6614c0fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec580f7 - Browse repository at this point
Copy the full SHA ec580f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 34c593d - Browse repository at this point
Copy the full SHA 34c593dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d44a0f3 - Browse repository at this point
Copy the full SHA d44a0f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 97d3c13 - Browse repository at this point
Copy the full SHA 97d3c13View commit details -
Configuration menu - View commit details
-
Copy full SHA for fac4855 - Browse repository at this point
Copy the full SHA fac4855View commit details -
Configuration menu - View commit details
-
Copy full SHA for ece5b71 - Browse repository at this point
Copy the full SHA ece5b71View commit details -
Configuration menu - View commit details
-
Copy full SHA for 07e998e - Browse repository at this point
Copy the full SHA 07e998eView commit details -
Configuration menu - View commit details
-
Copy full SHA for d300aa7 - Browse repository at this point
Copy the full SHA d300aa7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 561967b - Browse repository at this point
Copy the full SHA 561967bView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0a74d2 - Browse repository at this point
Copy the full SHA c0a74d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 382560c - Browse repository at this point
Copy the full SHA 382560cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f32b8b - Browse repository at this point
Copy the full SHA 0f32b8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for b903893 - Browse repository at this point
Copy the full SHA b903893View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2560134 - Browse repository at this point
Copy the full SHA 2560134View commit details -
Configuration menu - View commit details
-
Copy full SHA for c1b9123 - Browse repository at this point
Copy the full SHA c1b9123View commit details -
Configuration menu - View commit details
-
Copy full SHA for 850b256 - Browse repository at this point
Copy the full SHA 850b256View commit details -
error when unrolling trait constructors
Traits are forbidden in source code from having secondary constructors, which is what the current transform would generate. Trait parameters are encoded in concrete implementing classes as getter methods, perhaps unroll could provide default implementations, but this is unexplored.
Configuration menu - View commit details
-
Copy full SHA for b71f9b9 - Browse repository at this point
Copy the full SHA b71f9b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for f297b94 - Browse repository at this point
Copy the full SHA f297b94View commit details -
Configuration menu - View commit details
-
Copy full SHA for f0b2d7d - Browse repository at this point
Copy the full SHA f0b2d7dView commit details -
SIP 61 - remove tasty hack by not "telescoping" forwarders
Now, all forwarders directly call the unrolled method. This means that there is no need to resolve an invisible method, so the "hack" using TERMREFdirect is no longer needed. This increases bytecode size but reduces stack depth. Also removed scala.annotation.internal.UnrolledForwarder, as it is only needed for the TASTy hack.
Configuration menu - View commit details
-
Copy full SHA for 1722b69 - Browse repository at this point
Copy the full SHA 1722b69View commit details -
SIP 61 - add errors when unrolling apply, copy and fromProduct
Also standardise error messages as Declaration Errors
Configuration menu - View commit details
-
Copy full SHA for 4fe49cc - Browse repository at this point
Copy the full SHA 4fe49ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for ae4ceba - Browse repository at this point
Copy the full SHA ae4cebaView commit details -
Configuration menu - View commit details
-
Copy full SHA for b7dee01 - Browse repository at this point
Copy the full SHA b7dee01View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4006af0 - Browse repository at this point
Copy the full SHA 4006af0View commit details
Commits on Oct 8, 2024
-
add failing test: demo transparent inline can not see forwarders at t…
…yper At typer, when transparent inline methods are expanded, unroll forwarders are not yet generated. So if we define forwarders for the first time, in the same compilation unit that inlines a call to the forwarder, then it will fail. Perhaps we can detect this and suspend the unit, otherwise it would seem unreasonable complexity to generate forwarders in typer.
Configuration menu - View commit details
-
Copy full SHA for 8a1887c - Browse repository at this point
Copy the full SHA 8a1887cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 020617f - Browse repository at this point
Copy the full SHA 020617fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 932d797 - Browse repository at this point
Copy the full SHA 932d797View commit details