Inferierte Klassen Typparameter müssen in alle vorkommen der Klasse eingesetzt werden #54

Open
opened 2019-10-10 18:53:30 +00:00 by pl · 0 comments
Owner

branch: bytecode2
commit: a24080e22c04f6e50ed2a508c164270c0a9514c5

public class mathStruc {
model;

//Fun1*<Fun2*<A,A,A>, Fun1*<MathStruc <A>,MathStruc <A>>> 
innerOp = (o) -> (ms) -> new mathStruc<>(o.apply(model,ms.model));

public mathStruc(m) {
	model =m;
	//innerOp = (o) -> (ms) -> new mathStruc<>(o.apply(this.model,ms.model));
}

}

liefert

javap mathStruc.class
Compiled from "mathStruc.jav"
public class mathStruc<K$ extends DCB$, DBP$ extends AB$, AB$ extends K$, DCB$> {
K$ model;
Fun1$$<Fun2$<DCB, DCB$, DBP$>, Fun1$$<mathStruc, mathStruc>> innerOp;
public mathStruc(AB$);
}

müsste aber:

javap mathStruc.class
Compiled from "mathStruc.jav"
public class mathStruc<K$ extends DCB$, DBP$ extends AB$, AB$ extends K$, DCB$> {
K$ model;
Fun1$$<Fun2$<DCB, DCB$, DBP$>, Fun1$<mathStruc<K, DBP$, AB$, DCB$>, mathStruc<K$, DBP$, AB$, DCB$> innerOp;
public mathStruc(AB$);
}

branch: bytecode2 commit: a24080e22c04f6e50ed2a508c164270c0a9514c5 public class mathStruc { model; //Fun1*<Fun2*<A,A,A>, Fun1*<MathStruc <A>,MathStruc <A>>> innerOp = (o) -> (ms) -> new mathStruc<>(o.apply(model,ms.model)); public mathStruc(m) { model =m; //innerOp = (o) -> (ms) -> new mathStruc<>(o.apply(this.model,ms.model)); } } liefert javap mathStruc.class Compiled from "mathStruc.jav" public class mathStruc<K$ extends DCB$, DBP$ extends AB$, AB$ extends K$, DCB$> { K$ model; Fun1$$<Fun2$$<DCB$, DCB$, DBP$>, Fun1$$<mathStruc, mathStruc>> innerOp; public mathStruc(AB$); } müsste aber: javap mathStruc.class Compiled from "mathStruc.jav" public class mathStruc<K$ extends DCB$, DBP$ extends AB$, AB$ extends K$, DCB$> { K$ model; Fun1$$<Fun2$$<DCB$, DCB$, DBP$>, Fun1$$<mathStruc<K$, DBP$, AB$, DCB$>, mathStruc<K$, DBP$, AB$, DCB$> innerOp; public mathStruc(AB$); }
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: JavaTX/JavaCompilerCore#54
No description provided.