The scanbuild analysis cannot see that decodeUnicodeEscapeSequence either initializes the `unicode` argument or returns `false` such that the code following it runs only if `unicode` is initialized. Add an explicit initialization to pacify it.
@@ -1728,6 +1728,7 @@ bool OurReader::decodeUnicodeCodePoint(Token& token,
Location end,
unsigned int& unicode) {
+ unicode = 0; // Convince scanbuild this is always initialized before use.
if (!decodeUnicodeEscapeSequence(token, current, end, unicode))
return false;
if (unicode >= 0xD800 && unicode <= 0xDBFF) {