Open mrdziuban opened 1 year ago
I was able to minimize this a bit:
https://scastie.scala-lang.org/mrdziuban/IHV2q8voTuSKVOSw3WP0Ug/19
A few other things that may be helpful for debugging:
compiletime.summonAll
directly instead of LiftAll
trait Test
only has one type parameter and the LiftAll
calls look like LiftAll[Test, String *: Boolean *: EmptyTuple]
: Any
to def test
This appears to be fixed in Scala 3.5.2, but still happens in versions <= 3.5.1. Feel free to close if that's considered a good enough fix
Bisect shows it was fixed in f2829c3fab28cc6ab47a5627abda855884476572
@prolativ Probably it can be closed after backporting or rejecting backport to the LTS
Compiler version
3.3.0-RC3, also happens on 3.2.2
Minimized code
Please excuse the fact that this code is fairly meaningless, it's a very trimmed down version of a pattern (that actually has meaning) in my codebase.
https://scastie.scala-lang.org/mrdziuban/IHV2q8voTuSKVOSw3WP0Ug/1
Output
I've tried increasing the stack size as suggested, all the way up to
-Xss50M
.When I compile with
-Yno-decode-stacktraces
I get a stack trace. GitHub tells me the full stack trace is too long to include in the description here but you can view it here: https://gist.github.com/mrdziuban/9d60341f5c2173bd768996da4589af12. Here's a condensed version:Expectation
The code would compile successfully as it does in scala 2 -- https://scastie.scala-lang.org/mrdziuban/WlK9X64oSJOFNyzrSP5FBA/3
Strangely, if I comment out just one of the
case object
s inobject Rel
and the correspondingcase
statement indef test
then everything compiles just fine. Not sure if this is actually relevant to the underlying issue but wanted to mention it in case it's helpful for debugging.