Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Emit mixin forwarders as ordinary, non-bridge methods again #23942

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

Merged
hamzaremmal merged 10 commits into scala:main from hamzaremmal:mixin-forwarder
Sep 21, 2025

Conversation

Copy link
Member

@hamzaremmal hamzaremmal commented Sep 17, 2025

Lets try to merge again #21890

@hamzaremmal hamzaremmal force-pushed the mixin-forwarder branch 2 times, most recently from 9c4398f to fdd15a4 Compare September 17, 2025 09:47
@hamzaremmal hamzaremmal marked this pull request as ready for review September 17, 2025 09:47
hamzaremmal and others added 8 commits September 17, 2025 15:46
This reverts commit 6d0f9ca.
Forward port of most commits in
scala/scala#8037
Compensate some of the consequences by adding the `MixedIn` flag.
In addition to the use seen in the diff in `BCodeHelpers`, the JS
backend has an existing test for `isOneOf(Bridge | MixedIn)` which
needs this compensation.
This is a forward port of
scala/scala@6fc2202
In Scala 2 that commit was reverting a commit that had stopped
emitting Java generic signatures. In dotc we never had that logic
before, so this is new code.
Co-authored-by: Hamza Remmal <hamza@remmal.net>
Copy link
Member Author

#23963 it took me all the afternoon yesterday to migrate and update just a little of the CB.
To not stop progress here, I'm rewriting the sbt-bridge changes in a Java 8 syntax.

sjrd and He-Pin reacted with thumbs up emoji He-Pin reacted with heart emoji

@hamzaremmal hamzaremmal force-pushed the mixin-forwarder branch 2 times, most recently from 8ebc65a to d6e9a75 Compare September 21, 2025 15:33
val memberTpe = if sym.is(MixedIn) then
mixinPhase.asInstanceOf[Mixin].mixinForwarderGenericInfos.get(sym) match
case Some(genericInfo) => genericInfo
case none => computeMemberTpe()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not None

@hamzaremmal hamzaremmal merged commit 9bd7774 into scala:main Sep 21, 2025
49 checks passed
@hamzaremmal hamzaremmal deleted the mixin-forwarder branch September 21, 2025 17:07
Copy link
Contributor

tgodzik commented Sep 22, 2025

Should we try backporting it to LTS ? @hamzaremmal ?

Copy link
Member Author

This is debatable, I'm more towards not backporting it since 3.3.7 will start emitting code that 3.4.0 doesn't emit.

Copy link
Contributor

He-Pin commented Sep 22, 2025

But that will affect the Play users?

Copy link
Member

sjrd commented Sep 22, 2025

Oh no no no; don't backport this.

Copy link
Contributor

tgodzik commented Sep 22, 2025

It did seem to be a bit risky yeah, thanks for confirming Sebastien!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

@sjrd sjrd sjrd approved these changes

+1 more reviewer

@He-Pin He-Pin He-Pin left review comments

Reviewers whose approvals may not affect merge requirements
Assignees

@sjrd sjrd

Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /