From e7859c3ee45e8bce64fbe24b3c8444a03453f4f3 Mon Sep 17 00:00:00 2001 From: Vladimir Still Date: Fri, 3 Nov 2023 05:29:23 -0700 Subject: [PATCH] Avoid null dereference in Visitor::findContext for visitor without context found by clang-tidy --- ir/visitor.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ir/visitor.h b/ir/visitor.h index aa183a6ca62..83288ca1ff4 100644 --- a/ir/visitor.h +++ b/ir/visitor.h @@ -245,6 +245,7 @@ class Visitor { template inline const T *findContext(const Context *&c) const { if (!c) c = ctxt; + if (!c) return nullptr; while ((c = c->parent)) if (auto *rv = dynamic_cast(c->node)) return rv; return nullptr; @@ -257,6 +258,7 @@ class Visitor { template inline const T *findOrigCtxt(const Context *&c) const { if (!c) c = ctxt; + if (!c) return nullptr; while ((c = c->parent)) if (auto *rv = dynamic_cast(c->original)) return rv; return nullptr;