Fun1$$.class: Signature von apply falsch #102
Labels
No Label
Codegen
confirmed
duplicate
Eclipse-Plugin
Feature Request
generics
in progress
invalid
JavaCompilerCore
needs info
Parser
Trash
Type
Unify
won't fix
works for me
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: JavaTX/JavaCompilerCore#102
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
branch targetBytecode
commit
9d03080667
So sieht Bytecode aus:
public interface Fun1$$<T1 extends java.lang.Object, R extends java.lang.Object>
minor version: 0
major version: 52
flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: #2 // Fun1$$
super_class: #5 // java/lang/Object
interfaces: 0, fields: 0, methods: 1, attributes: 1
Constant pool:
#1 = Utf8 Fun1$$
#2 = Class #1 // Fun1$$
#3 = Utf8 T1:Ljava/lang/Object;R:Ljava/lang/Object;Ljava/lang/Object;
#4 = Utf8 java/lang/Object
#5 = Class #4 // java/lang/Object
#6 = Utf8 apply
#7 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#8 = Utf8 (LT1;)LR;
#9 = Utf8 Signature
{
public abstract R apply(T1);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #8 // (LT1;)LR;
}
es sollte so aussehen:
interface Fun1$$<T1 extends java.lang.Object, R extends java.lang.Object>
minor version: 0
major version: 63
flags: (0x0600) ACC_INTERFACE, ACC_ABSTRACT
this_class: #1 // Fun1$$
super_class: #3 // java/lang/Object
interfaces: 0, fields: 0, methods: 1, attributes: 1
Constant pool:
#1 = Class #2 // Fun1$$
#2 = Utf8 Fun1$$
#3 = Class #4 // java/lang/Object
#4 = Utf8 java/lang/Object
#5 = Utf8 apply
#6 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#7 = Utf8 Signature
#8 = Utf8 (TT1;)TR;
#9 = Utf8 T1:Ljava/lang/Object;R:Ljava/lang/Object;Ljava/lang/Object;
{
public abstract R apply(T1);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #8 // (TT1;)TR;
}
Signature: #9 // T1:Ljava/lang/Object;R:Ljava/lang/Object;Ljava/lang/Object;
Branch: targetBytecode
Commit:
b5af3a42a8
Ist gefixt.