-
Notifications
You must be signed in to change notification settings - Fork 21
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
class Stream.Cons
and object Stream.cons
are clashing with each other
#11997
Comments
Running on Mac, I do see linking errors when building OSS projects that upgraded to Scala.js 1.x |
Same with 2.12.x, right? Seeing as it's the same: https://github.com/scala/scala/blob/v2.12.11/src/library/scala/collection/immutable/Stream.scala#L1149-L1163 |
I've never observed the issue with 2.12.x. And our build uses 2.12.x by default, so I'm constantly building on 2.12.x. I guess this is because in 2.12.x, If my analysis is correct, we could work around the issue by swapping the order of the definitions in the 2.13.x source! |
Fixed in scala/scala#9035. |
In
object Stream
, there is aclass Cons
and anobject cons
.This happens not to cause any issue on the JVM, even on Windows. That's because
Stream$cons$
being a nestedobject
, scalac does not generate static forwarders for it inStream$cons
. However Scala.js generates more static forwarders, to be able to correctly define static methods in nested static classes of JDK APIs.This basically prevents from building Scala.js 1.x with 2.13.x on Windows.
I don't know what to do about this, given the binary compat guarantees. 😰
The text was updated successfully, but these errors were encountered: