================ @@ -365,6 +365,10 @@ class DefaultFilterCCC final : public CorrectionCandidateCallback { template <class C> class DeclFilterCCC final : public CorrectionCandidateCallback { public: + explicit DeclFilterCCC(const IdentifierInfo *Typo = nullptr, + NestedNameSpecifier *TypoNNS = nullptr) ---------------- bwendling wrote:
I was copying off of the other `CCC` classes. Perhaps it's because both arguments have default values? Segfault seems to agree (https://stackoverflow.com/questions/4467142/why-is-explicit-allowed-for-default-constructors-and-constructors-with-2-or-more): > One reason where it's needed is, if you have default arguments for the first > parameter. The constructor becomes a default constructor, but can still be > used as converting constructor ``` struct A { explicit A(int = 0); // added it to a default constructor }; ``` https://github.com/llvm/llvm-project/pull/76348 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits