--- a/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java Thu May 10 12:32:58 2012 -0700
+++ b/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java Fri May 11 20:06:00 2012 +0530
@@ -1606,6 +1606,11 @@
}
private JCStatement makeResourceCloseInvocation(JCExpression resource) {
+ // convert to AutoCloseable if needed
+ if (types.asSuper(resource.type, syms.autoCloseableType.tsym) == null) {
+ resource = (JCExpression) convert(resource, syms.autoCloseableType);
+ }
+
// create resource.close() method invocation
JCExpression resourceClose = makeCall(resource,
names.close,