Skip to content
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

Preserve method static access for static Invokers #415

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

CertainLach
Copy link

Before this commit, static modifier was dropped from generated method, resulting in wrong method being generated (no static modifier).
However, bytecode was already fine, there is no aload_0, and variable offsets is ok.

image

TODO

Validate that targetMethod.access & ACC_STATIC == accessorMethod.access & ACC_STATIC (Can't find where in codebase i should add this check)

@Mumfrey
Copy link
Member

Mumfrey commented Jun 18, 2020

How did you manage to create 3 commits for such a simple change?

Chocohead added a commit to Chocohead/Mixin that referenced this pull request Jun 16, 2021
Chocohead added a commit to Chocohead/Mixin that referenced this pull request Jun 16, 2021
Whilst SpongePowered#415 is generating things more correctly, there are mods (such as Better End) which rely on the current behaviour
modmuss50 pushed a commit to FabricMC/Mixin that referenced this pull request Jun 28, 2021
* Allow mixining interfaces

Reapplies #13
Fixes #34
Includes (a form of) SpongePowered#413 and SpongePowered#415

* Fix mods using static vagueness

Whilst SpongePowered#415 is generating things more correctly, there are mods (such as Better End) which rely on the current behaviour

* Fix lambdas in interface Mixins

Fixes #43
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