Author: danielmarjamaki Date: Fri Feb 12 03:38:38 2016 New Revision: 260667
URL: http://llvm.org/viewvc/llvm-project?rev=260667&view=rev Log: [clang-tidy] Fix failure in 'misc-misplaced-widening-cast' test. I added portability warnings when int results are casted to long. I forgot to handle uint, ulong and ulonglong. Tested on x86 and powerpc targets, hope it works now on all buildbots. Modified: clang-tools-extra/trunk/clang-tidy/misc/MisplacedWideningCastCheck.cpp Modified: clang-tools-extra/trunk/clang-tidy/misc/MisplacedWideningCastCheck.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/misc/MisplacedWideningCastCheck.cpp?rev=260667&r1=260666&r2=260667&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/misc/MisplacedWideningCastCheck.cpp (original) +++ clang-tools-extra/trunk/clang-tidy/misc/MisplacedWideningCastCheck.cpp Fri Feb 12 03:38:38 2016 @@ -96,14 +96,19 @@ void MisplacedWideningCastCheck::check(c // If CalcType and CastType have same size then there is no real danger, but // there can be a portability problem. if (Context.getIntWidth(CastType) == Context.getIntWidth(CalcType)) { - if (CalcType->isSpecificBuiltinType(BuiltinType::Int)) { + if (CalcType->isSpecificBuiltinType(BuiltinType::Int) || + CalcType->isSpecificBuiltinType(BuiltinType::UInt)) { // There should be a warning when casting from int to long or long long. if (!CastType->isSpecificBuiltinType(BuiltinType::Long) && - !CastType->isSpecificBuiltinType(BuiltinType::LongLong)) + !CastType->isSpecificBuiltinType(BuiltinType::ULong) && + !CastType->isSpecificBuiltinType(BuiltinType::LongLong) && + !CastType->isSpecificBuiltinType(BuiltinType::ULongLong)) return; - } else if (CalcType->isSpecificBuiltinType(BuiltinType::Long)) { + } else if (CalcType->isSpecificBuiltinType(BuiltinType::Long) || + CalcType->isSpecificBuiltinType(BuiltinType::ULong)) { // There should be a warning when casting from long to long long. - if (!CastType->isSpecificBuiltinType(BuiltinType::LongLong)) + if (!CastType->isSpecificBuiltinType(BuiltinType::LongLong) && + !CastType->isSpecificBuiltinType(BuiltinType::ULongLong)) return; } else { return; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits