Clang 6 doesn't allow negative numbers to be implicitely converted to unsigned types. This patch explicits all casts. While I'm here, add an option to silent tons of warning messages PR: 226644 Reported by: rakuco@