summaryrefslogtreecommitdiff
path: root/source/slang/slang-ast-natural-layout.cpp
diff options
context:
space:
mode:
authorJulius Ikkala <julius.ikkala@gmail.com>2025-06-26 19:49:11 +0300
committerGitHub <noreply@github.com>2025-06-26 16:49:11 +0000
commita58675b161d9fea8a73a6ded15e5a79b1fc020ef (patch)
tree9c4ed05d5c3f8855413e0f54f003378faa762c83 /source/slang/slang-ast-natural-layout.cpp
parent83c7b7c7716c31596d9e2829d4afa708ce23a182 (diff)
Fix tuple AST & IR layout size queries (#7502)
* Fix tuple AST & IR layout size queries * Don't peephole sizeof if size is still indeterminate
Diffstat (limited to 'source/slang/slang-ast-natural-layout.cpp')
-rw-r--r--source/slang/slang-ast-natural-layout.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/slang/slang-ast-natural-layout.cpp b/source/slang/slang-ast-natural-layout.cpp
index f15dee1d1..7643e0433 100644
--- a/source/slang/slang-ast-natural-layout.cpp
+++ b/source/slang/slang-ast-natural-layout.cpp
@@ -153,6 +153,12 @@ NaturalSize ASTNaturalLayoutContext::_calcSizeImpl(Type* type)
// Initialize empty
NaturalSize size = NaturalSize::makeEmpty();
+ // We can't compute the size of an abstract type pack yet.
+ if (isAbstractTypePack(tupleType->getTypePack()))
+ {
+ return NaturalSize::makeInvalid();
+ }
+
// Accumulate over all the member types
for (auto cur = 0; cur < tupleType->getMemberCount(); cur++)
{