[clang-tools-extra] [clangd] Guard against null TemplateName in DumpVisitor (PR #181554)

Emily Dror via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 19 00:29:15 PST 2026


https://github.com/edror12 updated https://github.com/llvm/llvm-project/pull/181554

>From 69b5c5725faac22995a64271ea1c6972510e182c Mon Sep 17 00:00:00 2001
From: Emily Dror <emilydror01 at gmail.com>
Date: Sun, 15 Feb 2026 17:04:06 +0200
Subject: [PATCH] [clangd] Guard against null TemplateName in DumpVisitor

Add a guard against null values for TemplateName in
DumpVisitor::TraverseTemplateName.

Fixes: #180902
Signed-off-by: Emily Dror <emilydror01 at gmail.com>
---
 clang-tools-extra/clangd/DumpAST.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang-tools-extra/clangd/DumpAST.cpp b/clang-tools-extra/clangd/DumpAST.cpp
index cd409a2b930ef..2b673128493b3 100644
--- a/clang-tools-extra/clangd/DumpAST.cpp
+++ b/clang-tools-extra/clangd/DumpAST.cpp
@@ -347,8 +347,8 @@ class DumpVisitor : public RecursiveASTVisitor<DumpVisitor> {
     });
   }
   bool TraverseTemplateName(const TemplateName &TN) {
-    return traverseNode("template name", TN,
-                        [&] { Base::TraverseTemplateName(TN); });
+    return TN.isNull() || traverseNode("template name", TN,
+                                       [&] { Base::TraverseTemplateName(TN); });
   }
   bool TraverseTemplateArgumentLoc(const TemplateArgumentLoc &TAL) {
     return traverseNode("template argument", TAL,



More information about the cfe-commits mailing list