Cleaning up a few FindBugs reported minor issues.
diff --git a/release-notes/VERSION b/release-notes/VERSION
index 3e6d6ad..23aec73 100644
--- a/release-notes/VERSION
+++ b/release-notes/VERSION
@@ -14,6 +14,10 @@
 === Releases ===
 ------------------------------------------------------------------------
 
+2.7.6 (not yet released)
+
+- Clean up of FindBugs reported possible issues.
+
 2.7.5 (11-Jun-2016)
  
 #280: FilteringGeneratorDelegate.writeUTF8String() should delegate to writeUTF8String()
diff --git a/src/main/java/com/fasterxml/jackson/core/Base64Variant.java b/src/main/java/com/fasterxml/jackson/core/Base64Variant.java
index 045a316..84f27dc 100644
--- a/src/main/java/com/fasterxml/jackson/core/Base64Variant.java
+++ b/src/main/java/com/fasterxml/jackson/core/Base64Variant.java
@@ -76,19 +76,21 @@
      * Symbolic name of variant; used for diagnostics/debugging.
      *<p>
      * Note that this is the only non-transient field; used when reading
-     * back from serialized state
+     * back from serialized state.
+     *<p>
+     * Also: must not be private, accessed from `BaseVariants`
      */
-    protected final String _name;
+    final String _name;
 
     /**
      * Whether this variant uses padding or not.
      */
-    protected final transient boolean _usesPadding;
+    private final transient boolean _usesPadding;
 
     /**
      * Characted used for padding, if any ({@link #PADDING_CHAR_NONE} if not).
      */
-    protected final transient char _paddingChar;
+    private final transient char _paddingChar;
     
     /**
      * Maximum number of encoded base64 characters to output during encoding
@@ -98,7 +100,7 @@
      * Note: for some output modes (when writing attributes) linefeeds may
      * need to be avoided, and this value ignored.
      */
-    protected final transient int _maxLineLength;
+    private final transient int _maxLineLength;
 
     /*
     /**********************************************************
@@ -219,7 +221,11 @@
     public int decodeBase64Byte(byte b)
     {
         int ch = (int) b;
-        return (ch <= 127) ? _asciiToBase64[ch] : BASE64_VALUE_INVALID;
+        // note: cast retains sign, so it's from -128 to +127
+        if (ch < 0) {
+            return BASE64_VALUE_INVALID;
+        }
+        return _asciiToBase64[ch];
     }
 
     /*
diff --git a/src/main/java/com/fasterxml/jackson/core/JsonEncoding.java b/src/main/java/com/fasterxml/jackson/core/JsonEncoding.java
index ee7d619..f561ecf 100644
--- a/src/main/java/com/fasterxml/jackson/core/JsonEncoding.java
+++ b/src/main/java/com/fasterxml/jackson/core/JsonEncoding.java
@@ -23,11 +23,11 @@
         UTF32_LE("UTF-32LE", false, 32)
         ;
     
-    protected final String _javaName;
+    private final String _javaName;
 
-    protected final boolean _bigEndian;
+    private final boolean _bigEndian;
 
-    protected final int _bits;
+    private final int _bits;
     
     JsonEncoding(String javaName, boolean bigEndian, int bits)
     {
diff --git a/src/main/java/com/fasterxml/jackson/core/JsonLocation.java b/src/main/java/com/fasterxml/jackson/core/JsonLocation.java
index 40e3f96..264f739 100644
--- a/src/main/java/com/fasterxml/jackson/core/JsonLocation.java
+++ b/src/main/java/com/fasterxml/jackson/core/JsonLocation.java
@@ -11,7 +11,7 @@
  * within input streams.
  */
 public class JsonLocation
-    implements java.io.Serializable // as per [JACKSON-168]
+    implements java.io.Serializable
 {
     private static final long serialVersionUID = 1L;
 
diff --git a/src/main/java/com/fasterxml/jackson/core/base/GeneratorBase.java b/src/main/java/com/fasterxml/jackson/core/base/GeneratorBase.java
index 149a0c1..d1b97a0 100644
--- a/src/main/java/com/fasterxml/jackson/core/base/GeneratorBase.java
+++ b/src/main/java/com/fasterxml/jackson/core/base/GeneratorBase.java
@@ -34,12 +34,12 @@
 
     // // // Constants for validation messages (since 2.6)
 
-    protected final String WRITE_BINARY = "write a binary value";
-    protected final String WRITE_BOOLEAN = "write a boolean value";
-    protected final String WRITE_NULL = "write a null";
-    protected final String WRITE_NUMBER = "write a number";
-    protected final String WRITE_RAW = "write a raw (unencoded) value";
-    protected final String WRITE_STRING = "write a string";
+    protected final static String WRITE_BINARY = "write a binary value";
+    protected final static String WRITE_BOOLEAN = "write a boolean value";
+    protected final static String WRITE_NULL = "write a null";
+    protected final static String WRITE_NUMBER = "write a number";
+    protected final static String WRITE_RAW = "write a raw (unencoded) value";
+    protected final static String WRITE_STRING = "write a string";
 
     /*
     /**********************************************************
diff --git a/src/main/java/com/fasterxml/jackson/core/filter/FilteringParserDelegate.java b/src/main/java/com/fasterxml/jackson/core/filter/FilteringParserDelegate.java
index bf68cd7..d395b11 100644
--- a/src/main/java/com/fasterxml/jackson/core/filter/FilteringParserDelegate.java
+++ b/src/main/java/com/fasterxml/jackson/core/filter/FilteringParserDelegate.java
@@ -281,7 +281,8 @@
         JsonToken t = delegate.nextToken();
         if (t == null) {
             // no strict need to close, since we have no state here
-            return (_currToken = t);
+            _currToken = t;
+            return t;
         }
 
         // otherwise... to include or not?
@@ -453,7 +454,8 @@
         while (true) {
             JsonToken t = delegate.nextToken();
             if (t == null) { // is this even legal?
-                return (_currToken = t);
+                _currToken = t;
+                return t;
             }
             TokenFilter f;
 
diff --git a/src/main/java/com/fasterxml/jackson/core/io/SerializedString.java b/src/main/java/com/fasterxml/jackson/core/io/SerializedString.java
index ac79308..8f32b5c 100644
--- a/src/main/java/com/fasterxml/jackson/core/io/SerializedString.java
+++ b/src/main/java/com/fasterxml/jackson/core/io/SerializedString.java
@@ -17,6 +17,8 @@
 public class SerializedString
     implements SerializableString, java.io.Serializable
 {
+    private static final long serialVersionUID = 1L;
+
     protected final String _value;
 
     /* 13-Dec-2010, tatu: Whether use volatile or not is actually an important
diff --git a/src/main/java/com/fasterxml/jackson/core/json/ByteSourceJsonBootstrapper.java b/src/main/java/com/fasterxml/jackson/core/json/ByteSourceJsonBootstrapper.java
index d37079b..6bbe412 100644
--- a/src/main/java/com/fasterxml/jackson/core/json/ByteSourceJsonBootstrapper.java
+++ b/src/main/java/com/fasterxml/jackson/core/json/ByteSourceJsonBootstrapper.java
@@ -342,7 +342,7 @@
         }
         return fullMatchStrength;
     }
-    
+
     private static int skipSpace(InputAccessor acc) throws IOException
     {
         if (!acc.hasMoreBytes()) {
@@ -350,7 +350,7 @@
         }
         return skipSpace(acc, acc.nextByte());
     }
-    
+
     private static int skipSpace(InputAccessor acc, byte b) throws IOException
     {
         while (true) {
@@ -362,10 +362,9 @@
                 return -1;
             }
             b = acc.nextByte();
-            ch = (int) b & 0xFF;
         }
     }
-    
+
     /*
     /**********************************************************
     /* Internal methods, parsing
diff --git a/src/main/java/com/fasterxml/jackson/core/json/JsonGeneratorImpl.java b/src/main/java/com/fasterxml/jackson/core/json/JsonGeneratorImpl.java
index 1270eae..1ede298 100644
--- a/src/main/java/com/fasterxml/jackson/core/json/JsonGeneratorImpl.java
+++ b/src/main/java/com/fasterxml/jackson/core/json/JsonGeneratorImpl.java
@@ -29,7 +29,7 @@
      * (first 128 character codes), used for single-byte UTF-8 characters.
      */
     protected final static int[] sOutputEscapes = CharTypes.get7BitOutputEscapes();
-    
+
     /*
     /**********************************************************
     /* Configuration, basic I/O
diff --git a/src/main/java/com/fasterxml/jackson/core/json/JsonReadContext.java b/src/main/java/com/fasterxml/jackson/core/json/JsonReadContext.java
index 3520b2b..cf09633 100644
--- a/src/main/java/com/fasterxml/jackson/core/json/JsonReadContext.java
+++ b/src/main/java/com/fasterxml/jackson/core/json/JsonReadContext.java
@@ -201,7 +201,7 @@
     private void _checkDup(DupDetector dd, String name) throws JsonProcessingException {
         if (dd.isDup(name)) {
             Object src = dd.getSource();
-            throw new JsonParseException(((src instanceof JsonGenerator) ? ((JsonParser) src) : null),
+            throw new JsonParseException(((src instanceof JsonParser) ? ((JsonParser) src) : null),
                     "Duplicate field '"+name+"'");
         }
     }
diff --git a/src/main/java/com/fasterxml/jackson/core/json/ReaderBasedJsonParser.java b/src/main/java/com/fasterxml/jackson/core/json/ReaderBasedJsonParser.java
index bb211ba..64c798d 100644
--- a/src/main/java/com/fasterxml/jackson/core/json/ReaderBasedJsonParser.java
+++ b/src/main/java/com/fasterxml/jackson/core/json/ReaderBasedJsonParser.java
@@ -2011,12 +2011,10 @@
             int i = (int) c;
             if (i <= INT_BACKSLASH) {
                 if (i == INT_BACKSLASH) {
-                    /* Although chars outside of BMP are to be escaped as
-                     * an UTF-16 surrogate pair, does that affect decoding?
-                     * For now let's assume it does not.
-                     */
+                    // Although chars outside of BMP are to be escaped as an UTF-16 surrogate pair,
+                    // does that affect decoding? For now let's assume it does not.
                     _inputPtr = inPtr;
-                    c = _decodeEscaped();
+                    /*c = */ _decodeEscaped();
                     inPtr = _inputPtr;
                     inLen = _inputEnd;
                 } else if (i <= INT_QUOTE) {
@@ -2128,9 +2126,6 @@
                     return i;
                 }
                 if (i != INT_COLON) {
-                    if (i < INT_SPACE) {
-                        _throwInvalidSpace(i);
-                    }
                     _reportUnexpectedChar(i, "was expecting a colon to separate field name and value");
                 }
                 gotColon = true;
diff --git a/src/main/java/com/fasterxml/jackson/core/json/UTF8StreamJsonParser.java b/src/main/java/com/fasterxml/jackson/core/json/UTF8StreamJsonParser.java
index cc2c927..3ad528c 100644
--- a/src/main/java/com/fasterxml/jackson/core/json/UTF8StreamJsonParser.java
+++ b/src/main/java/com/fasterxml/jackson/core/json/UTF8StreamJsonParser.java
@@ -2559,17 +2559,16 @@
                 _decodeEscaped();
                 break;
             case 2: // 2-byte UTF
-                _skipUtf8_2(c);
+                _skipUtf8_2();
                 break;
             case 3: // 3-byte UTF
-                _skipUtf8_3(c);
+                _skipUtf8_3();
                 break;
             case 4: // 4-byte UTF
                 _skipUtf8_4(c);
                 break;
             default:
                 if (c < INT_SPACE) {
-                    // As per [JACKSON-208], call can now return:
                     _throwUnquotedSpace(c, "string value");
                 } else {
                     // Is this good enough error message?
@@ -2676,9 +2675,7 @@
 
             switch (codes[c]) {
             case 1: // backslash
-                if (c != '\'') { // marked as special, isn't here
-                    c = _decodeEscaped();
-                }
+                c = _decodeEscaped();
                 break;
             case 2: // 2-byte UTF
                 c = _decodeUtf8_2(c);
@@ -3018,9 +3015,6 @@
                     return i;
                 }
                 if (i != INT_COLON) {
-                    if (i < INT_SPACE) {
-                        _throwInvalidSpace(i);
-                    }
                     _reportUnexpectedChar(i, "was expecting a colon to separate field name and value");
                 }
                 gotColon = true;
@@ -3086,10 +3080,10 @@
                     _skipCR();
                     break;
                 case 2: // 2-byte UTF
-                    _skipUtf8_2(i);
+                    _skipUtf8_2();
                     break;
                 case 3: // 3-byte UTF
-                    _skipUtf8_3(i);
+                    _skipUtf8_3();
                     break;
                 case 4: // 4-byte UTF
                     _skipUtf8_4(i);
@@ -3135,10 +3129,10 @@
                 case '*': // nop for these comments
                     break;
                 case 2: // 2-byte UTF
-                    _skipUtf8_2(i);
+                    _skipUtf8_2();
                     break;
                 case 3: // 3-byte UTF
-                    _skipUtf8_3(i);
+                    _skipUtf8_3();
                     break;
                 case 4: // 4-byte UTF
                     _skipUtf8_4(i);
@@ -3346,12 +3340,12 @@
         return ((c << 6) | (d & 0x3F)) - 0x10000;
     }
 
-    private final void _skipUtf8_2(int c) throws IOException
+    private final void _skipUtf8_2() throws IOException
     {
         if (_inputPtr >= _inputEnd) {
             loadMoreGuaranteed();
         }
-        c = (int) _inputBuffer[_inputPtr++];
+        int c = (int) _inputBuffer[_inputPtr++];
         if ((c & 0xC0) != 0x080) {
             _reportInvalidOther(c & 0xFF, _inputPtr);
         }
@@ -3360,13 +3354,13 @@
     /* Alas, can't heavily optimize skipping, since we still have to
      * do validity checks...
      */
-    private final void _skipUtf8_3(int c) throws IOException
+    private final void _skipUtf8_3() throws IOException
     {
         if (_inputPtr >= _inputEnd) {
             loadMoreGuaranteed();
         }
         //c &= 0x0F;
-        c = (int) _inputBuffer[_inputPtr++];
+        int c = (int) _inputBuffer[_inputPtr++];
         if ((c & 0xC0) != 0x080) {
             _reportInvalidOther(c & 0xFF, _inputPtr);
         }
diff --git a/src/main/java/com/fasterxml/jackson/core/sym/ByteQuadsCanonicalizer.java b/src/main/java/com/fasterxml/jackson/core/sym/ByteQuadsCanonicalizer.java
index d9e6c4f..3532b7e 100644
--- a/src/main/java/com/fasterxml/jackson/core/sym/ByteQuadsCanonicalizer.java
+++ b/src/main/java/com/fasterxml/jackson/core/sym/ByteQuadsCanonicalizer.java
@@ -456,7 +456,7 @@
         int total = totalCount();
         return String.format("[%s: size=%d, hashSize=%d, %d/%d/%d/%d pri/sec/ter/spill (=%s), total:%d]",
                 getClass().getName(), _count, _hashSize,
-                pri, sec, tert, spill, total, (pri+sec+tert+spill), total);
+                pri, sec, tert, spill, (pri+sec+tert+spill), total);
     }
 
     /*
@@ -595,9 +595,6 @@
                 return _names[offset2 >> 2];
             }
         }
-        if (len == 0) { // empty slot? Short-circuit if no more spillovers
-            return null;
-        }
         return _findSecondary(offset, hash, q, qlen);
     }
     
diff --git a/src/main/java/com/fasterxml/jackson/core/util/InternCache.java b/src/main/java/com/fasterxml/jackson/core/util/InternCache.java
index 3015196..829a679 100644
--- a/src/main/java/com/fasterxml/jackson/core/util/InternCache.java
+++ b/src/main/java/com/fasterxml/jackson/core/util/InternCache.java
@@ -16,6 +16,8 @@
 public final class InternCache
     extends ConcurrentHashMap<String,String> // since 2.3
 {
+    private static final long serialVersionUID = 1L;
+
     /**
      * Size to use is somewhat arbitrary, so let's choose something that's
      * neither too small (low hit ratio) nor too large (waste of memory).