[clang] [Clang] [NFC] Remove default argument in ASTUnit.h (PR #78566)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 18 04:05:52 PST 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: None (Sirraide)
<details>
<summary>Changes</summary>
This removes a default argument that is currently broken in C++23 mode due to `std::default_delete` now being `constexpr`. This is a known problem (see #<!-- -->74963, #<!-- -->59966, #<!-- -->69996, and a couple more), fixing which will probably take some time, so this at least makes it possible to compile `ASTUnit.h` in C++23 mode.
Note that we can’t simply include the header that provides the definition of the class causing the problem either, as that would create a circular dependency.
---
Full diff: https://github.com/llvm/llvm-project/pull/78566.diff
2 Files Affected:
- (modified) clang/include/clang/Frontend/ASTUnit.h (+1-1)
- (modified) clang/tools/libclang/CIndexCodeCompletion.cpp (+2-1)
``````````diff
diff --git a/clang/include/clang/Frontend/ASTUnit.h b/clang/include/clang/Frontend/ASTUnit.h
index fe99b3d5adbfa0..6af712afdcb6d8 100644
--- a/clang/include/clang/Frontend/ASTUnit.h
+++ b/clang/include/clang/Frontend/ASTUnit.h
@@ -902,7 +902,7 @@ class ASTUnit {
SourceManager &SourceMgr, FileManager &FileMgr,
SmallVectorImpl<StoredDiagnostic> &StoredDiagnostics,
SmallVectorImpl<const llvm::MemoryBuffer *> &OwnedBuffers,
- std::unique_ptr<SyntaxOnlyAction> Act = nullptr);
+ std::unique_ptr<SyntaxOnlyAction> Act);
/// Save this translation unit to a file with the given name.
///
diff --git a/clang/tools/libclang/CIndexCodeCompletion.cpp b/clang/tools/libclang/CIndexCodeCompletion.cpp
index 196c64e6172274..3c5f390f6d888a 100644
--- a/clang/tools/libclang/CIndexCodeCompletion.cpp
+++ b/clang/tools/libclang/CIndexCodeCompletion.cpp
@@ -765,7 +765,8 @@ clang_codeCompleteAt_Impl(CXTranslationUnit TU, const char *complete_filename,
IncludeBriefComments, Capture,
CXXIdx->getPCHContainerOperations(), *Results->Diag,
Results->LangOpts, *Results->SourceMgr, *Results->FileMgr,
- Results->Diagnostics, Results->TemporaryBuffers);
+ Results->Diagnostics, Results->TemporaryBuffers,
+ /*SyntaxOnlyAction=*/nullptr);
Results->DiagnosticsWrappers.resize(Results->Diagnostics.size());
``````````
</details>
https://github.com/llvm/llvm-project/pull/78566
More information about the cfe-commits
mailing list