From d09773615b534bf905f372e2d978d1220a7af307 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Tue, 28 Oct 2025 14:39:45 +0100 Subject: [PATCH] fix: don't access names of literal structs --- pass/pass.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pass/pass.cpp b/pass/pass.cpp index 94ad315..90e218c 100644 --- a/pass/pass.cpp +++ b/pass/pass.cpp @@ -382,11 +382,13 @@ void IRHashPass::hashType(const Type *Ty, Hasher &hash) { case Type::StructTyID: { const StructType *STy = cast(Ty); - const StringRef name = STy->getName(); - if (!name.empty()) { - // hash globaly once and just hash the name afterwards - hash.update(name); - return; + if (!STy->isLiteral()) { + const StringRef name = STy->getName(); + if (!name.empty()) { + // hash globaly once and just hash the name afterwards + hash.update(name); + return; + } } hash.update(STy->isLiteral());