forked from LegacyModdingMC/UniMix
-
Notifications
You must be signed in to change notification settings - Fork 6
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
Merge from upstream (Mixin 0.8.7) #3
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Fixes remapping of synthetic members in resolvable classes. (cherry picked from commit c33a48b)
… Mirror. (cherry picked from commit e5d9db4)
(cherry picked from commit c902985)
(cherry picked from commit 0fb3116)
Extending an already-compiled mixin no longer results in an error, and extending (a mixin that targets) your target class does result in an error. (cherry picked from commit 7f7dbc1)
We no longer use mirror. The generics are irrelevant in the first place because Mixin does not check them at runtime. (cherry picked from commit ccfb5ee)
…onment rather than on the Package specification version, since that version is unavailable in two scenarios: 1) ML loaded as a JPMS module and 2) ML added to the classpath using a folder rather than JAR-file.
* Include the Gson module deps in the module-info * Fully fix modularity * Update PatternCompiler.java
* Fix: Resolve `@Redirect`s breaking `@ModifyArg`. * Fix: Resolve `@Redirect`s breaking `@ModifyArgs`.
Takes the relevant changes from SpongePowered@e02f4ca.
The old logic misses the receiver and does not correctly handle double-size types.
…abricMC#137)" This reverts commit e779303.
…t one. (FabricMC#132)" This reverts commit 8c8ece2.
This reverts commit 3eb5281
# Conflicts: # gradle.properties # src/main/java/org/spongepowered/asm/mixin/MixinEnvironment.java
Mixins 0.8.7
Bafflingly, Mixin fails to match a `NEW` instruction whose `<init>` call is outside the slice range, *iff the user specified a descriptor*. I'm even more surprised that a mod relied on this. Fixes FabricMC#152.
…sers. These will never match because the LHS is the mixin name and the RHS is the target name. This restores the 0.8.5 behaviour which does not check the owner at all. We have never supported assignment expressions in initialisers until now anyway, and even if we check the owner we cannot determine whether the instruction is operating on the current *instance* without proper static analysis, so IMO there's not much point bothering.
This reverts commit 74a1696.
The old one did not properly account for discontinuities in the list, leading to double-width types clobbering meaningful locals and causing mysterious VerifyErrors.
`InjectionInfo.parse` can be very expensive and in the case of some MixinExtras features is not pure. The correct approach would be to use `InjectionInfo.getInjectorAnnotation`, but the override is no longer needed anyway since we only support Java 8+ so Mixin will already make injector methods private and synthetic. Except, Mixin does it based on the current `COMPATIBILITY_LEVEL`, which is wrong, because we could be on JAVA_17 and yet a class compiled with JAVA_8 had no choice but to use public methods. The original implementation was also incomplete because it forgot about default methods.
Update from upstream
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.