diff options
-rw-r--r-- | lldb/source/Symbol/ClangASTContext.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp index 4a40c4db249..4d25bf37564 100644 --- a/lldb/source/Symbol/ClangASTContext.cpp +++ b/lldb/source/Symbol/ClangASTContext.cpp @@ -8173,6 +8173,10 @@ clang::CXXMethodDecl *ClangASTContext::AddMethodToCXXRecordType( if (is_artificial) return nullptr; // skip everything artificial + const clang::ExplicitSpecifier explicit_spec( + nullptr /*expr*/, is_explicit + ? clang::ExplicitSpecKind::ResolvedTrue + : clang::ExplicitSpecKind::ResolvedFalse); if (name[0] == '~') { cxx_dtor_decl = clang::CXXDestructorDecl::Create( *getASTContext(), cxx_record_decl, clang::SourceLocation(), @@ -8191,7 +8195,7 @@ clang::CXXMethodDecl *ClangASTContext::AddMethodToCXXRecordType( clang::SourceLocation()), method_qual_type, nullptr, // TypeSourceInfo * - is_explicit, is_inline, is_artificial, false /*is_constexpr*/); + explicit_spec, is_inline, is_artificial, false /*is_constexpr*/); cxx_method_decl = cxx_ctor_decl; } else { clang::StorageClass SC = is_static ? clang::SC_Static : clang::SC_None; @@ -8226,7 +8230,7 @@ clang::CXXMethodDecl *ClangASTContext::AddMethodToCXXRecordType( clang::SourceLocation()), method_qual_type, nullptr, // TypeSourceInfo * - is_inline, is_explicit, false /*is_constexpr*/, + is_inline, explicit_spec, false /*is_constexpr*/, clang::SourceLocation()); } } |