Closed
Description
Compiler version
3.3.0-RC3
Minimized code
class C { type T; type U }
type X = (C { type U = T; def u: U } { type T = String })
Output
Recursion limit exceeded.
Maybe there is an illegal cyclic reference?
If that's not the case, you could also try to increase the stacksize using the -Xss JVM option.
For the unprocessed stack trace, compile with -Yno-decode-stacktraces.
A recurring operation is (inner to outer):
find-member C#T
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
...
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
find-member C#U
find-member C#T
find-member C#U
Expectation
It should compile (I think?).
I was trying to figure out what these RecTypes
were so I took the example from lookuprefined.scala and added the u
member to it.