Open rpiaggio opened 1 year ago
I think this is a Scala bug (if at all) not with this library. Compiling this with 3.2.0 we get a more helpful message:
[error] 43 | implicit val reuse: Reusability[Foo] = Reusability.derive
[error] | ^^^^^^^^^^^^^^^^^^
[error] |Failed to synthesize an instance of type deriving.Mirror{
[error] | MirroredType = Foo;
[error] | MirroredMonoType = Foo
[error] | ; MirroredElemTypes <: Tuple
[error] |}:
[error] | * class Foo is not a generic product because it takes more than one parameter list
[error] | * class Foo is not a generic sum because it is not a sealed class
[error] |----------------------------------------------------------------------------
Attempting to compile the following code in Scala 3
results in
The expected behavior is that only the first parameter group is considered for reusability, as it does in Scala 2