--- libaudiofile/modules/SimpleModule.h 2013-03-07 08:14:57.000000000 +0100 +++ libaudiofile/modules/SimpleModule.h 2016-09-27 13:49:59.329194632 +0200 @@ -123,7 +123,7 @@ typedef typename IntTypes::UnsignedType UnsignedType; static const int kScaleBits = (Format + 1) * CHAR_BIT - 1; - static const int kMinSignedValue = -1 << kScaleBits; + static const int kMinSignedValue = static_cast(~0u << kScaleBits); struct signedToUnsigned : public std::unary_function {