[clang] [clang] Fix error in gcc 7.5. on arm32-linux (PR #73702)

via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 28 13:46:45 PST 2023


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Steven Johnson (steven-johnson)

<details>
<summary>Changes</summary>

Apparently the gcc 7.5 compiler for arm32-linux fails to implicitly convert to std::optional; this inserts an explicit constructor to unbreak that compiler. [Injection from https://reviews.llvm.org/rG4142a64ae3ca4856e6a5ffae9e40014ef5cf9db5]

---
Full diff: https://github.com/llvm/llvm-project/pull/73702.diff


1 Files Affected:

- (modified) clang/lib/Sema/SemaDeclCXX.cpp (+1-1) 


``````````diff
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index 7385eac48d8c895..f80de2b88b5ef68 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -17299,7 +17299,7 @@ bool Sema::EvaluateStaticAssertMessageAsString(Expr *Message,
                                     OverloadCandidateSet::CSK_Normal);
     if (MemberLookup.empty())
       return std::nullopt;
-    return std::move(MemberLookup);
+    return std::move(std::optional<LookupResult>(MemberLookup));
   };
 
   bool SizeNotFound, DataNotFound;

``````````

</details>


https://github.com/llvm/llvm-project/pull/73702


More information about the cfe-commits mailing list