En Scala 2.9.1 me sale el siguiente comportamiento:Scala: orden de la definición de objeto acompañante vs clase caso
class Foo {
case class X()
object X // this compiles
def bar() {
object Y // this compiles
case class Y()
case class Z()
object Z // won't compile (see below)
}
}
El compilador se queja de Object Z
: error: Z ya se define como generado por el compilador () objeto complementario de clase de caso Z
Parece que no está permitido definir un objeto complementario para una clase de caso después de la definición de clase de caso si están dentro de una definición de función. ¿Es esto un error del compilador o intencional? Si esto último, ¿por qué?
Es bastante fácil evitarlo, así que no estoy seguro de que valga la pena votar. Gracias por el enlace al boleto. –