Fieldvar wird nicht richtig aufgelöst #249
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#249
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: bigRefactoring
commit:
9fc558c21a
Constraints werden falsch generiert:
Unify nach Oder-Constraints-Anpassung:
UND:[(void =. T, , -1 WC: false, IT: false), (B <. W, , 0 WC: true, IT: false), (Box_Main <. V, , 0 WC: true, IT: false)]
isInherited = false
isStatement = false
ODER:
[[(V =. !!!DIJ!!! ist falsch, DIK wäre richtig, 0 WC: true, IT: false, 0 WC: true, IT: false), (U <. Box, 1 WC: false, IT: false)]
isInherited = false
isStatement = false
]
[[(Box_Main <. Box_Main, )]
isInherited = false
isStatement = false
]
[[(U <. Box, 1 WC: false, IT: false), (W =. !!!DIL!!! ist falsch, DIM wäre richtig, 0 WC: true, IT: false, 0 WC: true, IT: false)]
isInherited = false
isStatement = false
]
[[(B <. B, )]
isInherited = false
isStatement = false
]
Fehlereingrenzung:
In TypeStmt.java
public void visit(FieldVar fieldVar) {
fieldVar.receiver.accept(this);
Set oderConstraints = new HashSet<>();
for(FieldAssumption fieldAssumption :
info.getFields(fieldVar.fieldVarName)){
!!!Hier wird der resolver nicht richtig erzeugt!!!
!!!es muesste Box<$N> $N -> FreshTV und diese müsste dann in den Resolver eingetragen werden!!!
Branch: bigRefactoring
commit:
9fc558c21a
File:
import java.lang.Object;
import java.lang.Integer;
import java.lang.String;
class B { }
class Box_Main extends B {
}
Fixed by commit
8f7becd62d
Ich habe nicht den Eindruck, dass das Problemn gelöst wurde.
UND:[(void =. BO, , -1 WC: false, IT: false), (B <. BR, , 0 WC: true, IT: false), (Box_Main <. BQ, , 0 WC: true, IT: false)]
isInherited = false
isStatement = false
ODER:
[[(BP <. Box, 1 WC: false, IT: false), (BQ =. FOU, 0 WC: true, IT: false, 0 WC: true, IT: false)]
!!! BQ =. FOV wäre korrekt !!!
isInherited = false
isStatement = false
]
[[(Box_Main <. Box_Main, )]
isInherited = false
isStatement = false
]
[[(BP <. Box, 1 WC: false, IT: false), (BR =. FOW, 0 WC: true, IT: false, 0 WC: true, IT: false)]
!!! BR =. FOX wäre korrekt !!!
isInherited = false
isStatement = false
]
[[(B <. B, )]
isInherited = false
isStatement = false
]