src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java

changeset 2563
c627efb5fdcd
parent 2429
94ea21ecfe2d
child 2564
ced008063508
equal deleted inserted replaced
2559:0253e7cc98a4 2563:c627efb5fdcd
1335 //where: 1335 //where:
1336 MethodAnalyzer<Symbol> returnSymbolAnalyzer = new MethodAnalyzer<Symbol>() { 1336 MethodAnalyzer<Symbol> returnSymbolAnalyzer = new MethodAnalyzer<Symbol>() {
1337 @Override 1337 @Override
1338 public Symbol process(MethodSymbol ms) { 1338 public Symbol process(MethodSymbol ms) {
1339 ArgumentExpressionKind kind = ArgumentExpressionKind.methodKind(ms, types); 1339 ArgumentExpressionKind kind = ArgumentExpressionKind.methodKind(ms, types);
1340 return kind != ArgumentExpressionKind.POLY ? ms.getReturnType().tsym : null; 1340 if (kind == ArgumentExpressionKind.POLY || ms.getReturnType().hasTag(TYPEVAR))
1341 return null;
1342 return ms.getReturnType().tsym;
1341 } 1343 }
1342 @Override 1344 @Override
1343 public Symbol reduce(Symbol s1, Symbol s2) { 1345 public Symbol reduce(Symbol s1, Symbol s2) {
1344 return s1 == syms.errSymbol ? s2 : s1 == s2 ? s1 : null; 1346 return s1 == syms.errSymbol ? s2 : s1 == s2 ? s1 : null;
1345 } 1347 }

mercurial