]> granicus.if.org Git - llvm/commitdiff
Fix compiler error in Attributes.cpp
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Wed, 12 Apr 2017 23:57:37 +0000 (23:57 +0000)
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Wed, 12 Apr 2017 23:57:37 +0000 (23:57 +0000)
```
Compiling Attributes.cpp ...
../../../Attributes.cpp: In member function 'std::__1::pair<unsigned int, llvm::Optional<unsigned int> > llvm::AttributeSet::getAllocSizeArgs() const':
../../../Attributes.cpp:542:69: error: operands to ?: have different types 'std::__1::pair<unsigned int, llvm::Optional<unsigned int> >' and 'std::__1::pair<int, int>'
   return SetNode ? SetNode->getAllocSizeArgs() : std::make_pair(0, 0);
                                                                     ^
../../../Attributes.cpp:543:1: error: control reaches end of non-void function [-Werror=return-type]
 }
 ^
```

Differential Revision: https://reviews.llvm.org/D31981

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@300143 91177308-0d34-0410-b5e6-96231b3b80d8

lib/IR/Attributes.cpp

index a62afe9dd2e628799d5d6c8d663227170f4a8519..7faac60208ffe972f576b560237eedd4c317b3ec 100644 (file)
@@ -539,7 +539,8 @@ uint64_t AttributeSet::getDereferenceableOrNullBytes() const {
 }
 
 std::pair<unsigned, Optional<unsigned>> AttributeSet::getAllocSizeArgs() const {
-  return SetNode ? SetNode->getAllocSizeArgs() : std::make_pair(0, 0);
+  return SetNode ? SetNode->getAllocSizeArgs()
+                 : std::pair<unsigned, Optional<unsigned>>(0, 0);
 }
 
 std::string AttributeSet::getAsString(bool InAttrGrp) const {