From 6c7120d684cc46caafbe348d658158c0060a7638 Mon Sep 17 00:00:00 2001 From: Yong He Date: Wed, 5 Jul 2023 14:37:48 -0700 Subject: Bottleneck DeclRef creation through ASTBuilder. (#2689) * Bottleneck DeclRef creation through ASTBuilder. * Fix clang error. * Fix. * Fix. * More fix. * Rebase on top of tree. --------- Co-authored-by: Yong He --- source/slang/slang-doc-markdown-writer.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'source/slang/slang-doc-markdown-writer.cpp') diff --git a/source/slang/slang-doc-markdown-writer.cpp b/source/slang/slang-doc-markdown-writer.cpp index f2e6158d5..a439b4454 100644 --- a/source/slang/slang-doc-markdown-writer.cpp +++ b/source/slang/slang-doc-markdown-writer.cpp @@ -271,7 +271,7 @@ void DocMarkdownWriter::writeSignature(CallableDecl* callableDecl) List parts; ASTPrinter printer(m_astBuilder, ASTPrinter::OptionFlag::ParamNames, &parts); - printer.addDeclSignature(DeclRef(callableDecl, nullptr)); + printer.addDeclSignature(m_astBuilder->getSpecializedDeclRef(callableDecl, nullptr)); Signature signature; getSignature(parts, signature); @@ -689,7 +689,7 @@ void DocMarkdownWriter::writeCallableOverridable(const ASTMarkup::Entry& entry, { // Output the overridable path (ie without terminal generic parameters) ASTPrinter printer(m_astBuilder); - printer.addOverridableDeclPath(DeclRef(callableDecl, nullptr)); + printer.addOverridableDeclPath(DeclRef(callableDecl)); // Extract the name out << toSlice("# `") << printer.getStringBuilder() << toSlice("`\n\n"); } @@ -938,7 +938,7 @@ void DocMarkdownWriter::_appendAggTypeName(AggTypeDeclBase* aggTypeDecl) // This could be lots of different things - struct/class/extension/interface/.. ASTPrinter printer(m_astBuilder); - printer.addDeclPath(DeclRef(aggTypeDecl, nullptr)); + printer.addDeclPath(DeclRef(aggTypeDecl)); if (as(aggTypeDecl)) { @@ -972,7 +972,7 @@ void DocMarkdownWriter::writeAggType(const ASTMarkup::Entry& entry, AggTypeDeclB // We can write out he name using the printer ASTPrinter printer(m_astBuilder); - printer.addDeclPath(DeclRef(aggTypeDecl, nullptr)); + printer.addDeclPath(DeclRef(aggTypeDecl)); out << toSlice("# `"); _appendAggTypeName(aggTypeDecl); -- cgit v1.2.3