From b587478f7cc14d8ba426dbd22db00f5a5a21320b Mon Sep 17 00:00:00 2001 From: Richard Warburton Date: Wed, 29 Oct 2014 12:09:17 +0100 Subject: [PATCH] 8062376: Suppress cast warnings when using NIO buffers Reviewed-by: psandoz, jfranck --- .../classes/com/sun/tools/javac/file/JavacFileManager.java | 1 + .../classes/com/sun/tools/javac/util/BaseFileManager.java | 3 +++ 2 files changed, 4 insertions(+) diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java index 24ead9af4dc..72c6574410e 100644 --- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java +++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java @@ -76,6 +76,7 @@ import static javax.tools.StandardLocation.*; */ public class JavacFileManager extends BaseFileManager implements StandardJavaFileManager { + @SuppressWarnings("cast") public static char[] toArray(CharBuffer buffer) { if (buffer.hasArray()) return ((CharBuffer)buffer.compact().flip()).array(); diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/BaseFileManager.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/BaseFileManager.java index 13ebfd2d619..0959ce7dec3 100644 --- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/BaseFileManager.java +++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/BaseFileManager.java @@ -235,6 +235,7 @@ public abstract class BaseFileManager implements JavaFileManager { return encName; } + @SuppressWarnings("cast") public CharBuffer decode(ByteBuffer inbuf, boolean ignoreEncodingErrors) { String encodingName = getEncodingName(); CharsetDecoder decoder; @@ -315,6 +316,7 @@ public abstract class BaseFileManager implements JavaFileManager { * @return a byte buffer containing the contents of the stream * @throws IOException if an error occurred while reading the stream */ + @SuppressWarnings("cast") public ByteBuffer makeByteBuffer(InputStream in) throws IOException { int limit = in.available(); @@ -343,6 +345,7 @@ public abstract class BaseFileManager implements JavaFileManager { /** * A single-element cache of direct byte buffers. */ + @SuppressWarnings("cast") private static class ByteBufferCache { private ByteBuffer cached; ByteBuffer get(int capacity) {