Skip to content

Conversation

@hamzaremmal
Copy link
Member

Now that SIP-52 was approved, we can use it to hide constructors that would have been generated by nsc but not dotc.

@sjrd
Copy link
Member

sjrd commented Feb 22, 2025

I don't understand why we need these @publicInBinary definitions. All the introduced constructors are in private classes. That means no call to those constructors could ever exist in another compilation unit.

IMO for these cases we should keep the MiMa filters instead, with a comment for that section saying "constructors of private classes, not an issue".


For the two private val _ = Enclosing.this in objects, that seems warranted. However :

  1. It would be good to first have a commit with a verbatim copy of the file upstream.
  2. Then a commit that actually introduces the patch and removes the MiMa filter.

Otherwise it's very tricky to determine now, and in the future, what changed.

Moreover, these lines really deserve comments explaining why they are there.

@hamzaremmal hamzaremmal disabled auto-merge February 22, 2025 16:10
@hamzaremmal hamzaremmal force-pushed the hr/stdlib-outer-pointer branch from cc96e21 to a6e4102 Compare February 24, 2025 10:02
@hamzaremmal hamzaremmal merged commit 9450855 into scala:main Feb 24, 2025
28 checks passed
@hamzaremmal hamzaremmal deleted the hr/stdlib-outer-pointer branch February 24, 2025 11:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants