Skip to content

Commit 5b737de

Browse files
datho7561mickaelistria
authored andcommitted
Fix TryStatement always marked as malformed by JavacConverter
Fixes: `ASTConverterTest.test0113` `ASTConverterTest.test0114` `ASTConverterTest.test0115` as well as tests for other Java versions Note: we only need to accomodate Java >= 8 in the AST conversion process, since that's what upstream does now. Signed-off-by: David Thompson <[email protected]>
1 parent db1dc00 commit 5b737de

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

org.eclipse.jdt.core.javac/src/org/eclipse/jdt/core/dom/JavacConverter.java

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2796,21 +2796,17 @@ private TryStatement convertTryStatement(JCTry javac, ASTNode parent) {
27962796
res.setFinally(convertBlock(javac.getFinallyBlock()));
27972797
}
27982798

2799-
if( this.ast.apiLevel >= AST.JLS8_INTERNAL) {
2800-
if( javac.getResources().size() > 0) {
2801-
Iterator<JCTree> it = javac.getResources().iterator();
2802-
while(it.hasNext()) {
2803-
ASTNode working = convertTryResource(it.next(), parent);
2804-
if( working instanceof VariableDeclarationExpression) {
2805-
res.resources().add(working);
2806-
} else if( this.ast.apiLevel >= AST.JLS9_INTERNAL && working instanceof Name){
2807-
res.resources().add(working);
2808-
} else {
2809-
res.setFlags(res.getFlags() | ASTNode.MALFORMED);
2810-
}
2799+
if( javac.getResources().size() > 0) {
2800+
Iterator<JCTree> it = javac.getResources().iterator();
2801+
while(it.hasNext()) {
2802+
ASTNode working = convertTryResource(it.next(), parent);
2803+
if( working instanceof VariableDeclarationExpression) {
2804+
res.resources().add(working);
2805+
} else if( this.ast.apiLevel >= AST.JLS9_INTERNAL && working instanceof Name){
2806+
res.resources().add(working);
2807+
} else {
2808+
res.setFlags(res.getFlags() | ASTNode.MALFORMED);
28112809
}
2812-
} else {
2813-
res.setFlags(res.getFlags() | ASTNode.MALFORMED);
28142810
}
28152811
}
28162812
javac.getCatches().stream().map(this::convertCatcher).forEach(res.catchClauses()::add);

0 commit comments

Comments
 (0)