diff options
Diffstat (limited to 'llvm/lib/IR/Attributes.cpp')
-rw-r--r-- | llvm/lib/IR/Attributes.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp index bcdc97e2ed8..19b7c302723 100644 --- a/llvm/lib/IR/Attributes.cpp +++ b/llvm/lib/IR/Attributes.cpp @@ -793,7 +793,9 @@ std::string AttributeSetNode::getAsString(bool InAttrGrp) const { /// ReturnIndex: 0 -> 1 /// FirstArgIndex: 1.. -> 2.. static constexpr unsigned attrIdxToArrayIdx(unsigned Index) { - return Index + 1; + // MSVC warns about '~0U + 1' wrapping around when this is called on + // FunctionIndex, so cast to int first. + return static_cast<int>(Index) + 1; } AttributeListImpl::AttributeListImpl(LLVMContext &C, |