-
Notifications
You must be signed in to change notification settings - Fork 1.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
Package objects extending traits can crash multi-stage compilation #15980
Comments
@KacperFKorban @nicolasstucki Do you think is a bisecting tool able to work with multi-stage compilation or can we adapt it. I'm worried mostly that checkouts between different commits would fail or overwrite local changes to bisect |
It can be reproduced without multi-stage, like so: scalac -Ytest-pickler 1_syntax_1.scala 2_annotations_1.scala 3_package_1.scala So the only thing we would need is to handle |
@KacperFKorban Any news on the bisection side? |
I tried bisecting it, but all I know at the moment it that:
So it was most likely introduced in #15877 |
@KacperFKorban Thanks for getting this far! That was actually enough to figure it out. |
Regression reproduced based on Open CB #4757 found in vitaliihonta/scala-ql (maintainer @vitaliihonta )
In the original build all files defined in submodules or tests placed in the same package (scalaql) were failing with large amount of errors related to cyclic references.
Part of the #15949 regression tracker
Compiler version
Fails in 3.2.1-RC1
Works in 3.2.0
Minimized code
The order of files within the compilation unit is important to reproduce:
Prefix ids combined with suffix unit id should allow to reproduce it in Vulpix
1st compilation unit:
2nd compilation unit
Invocation:
Output
Expectation
Should compile
The text was updated successfully, but these errors were encountered: