From 09a9d673322ebf4ca2fcb7d48f13a44e015ea33f Mon Sep 17 00:00:00 2001 From: Yong He Date: Mon, 9 Dec 2024 04:48:03 -0800 Subject: Allow pointers to existential values. (#5793) * Fix pointer offset logic and add executable tests. * Fix. * Fix test. * Add existential ptr test. * Allow pointers to existential values. * Fix. * Fix. --------- Co-authored-by: Ellie Hermaszewska --- source/slang/slang-check-decl.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'source/slang/slang-check-decl.cpp') diff --git a/source/slang/slang-check-decl.cpp b/source/slang/slang-check-decl.cpp index 4a4ade047..eeb75e3fd 100644 --- a/source/slang/slang-check-decl.cpp +++ b/source/slang/slang-check-decl.cpp @@ -3105,6 +3105,17 @@ Type* unwrapArrayType(Type* type) } } +Type* unwrapModifiedType(Type* type) +{ + for (;;) + { + if (auto modType = as(type)) + type = modType->getBase(); + else + return type; + } +} + void discoverExtensionDecls(List& decls, Decl* parent) { if (auto extDecl = as(parent)) -- cgit v1.2.3