summaryrefslogtreecommitdiff
path: root/source/slang/slang-check-decl.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2025-02-26 22:38:23 -0800
committerGitHub <noreply@github.com>2025-02-26 22:38:23 -0800
commit60c5db5caba089bf879fc958f373137b3e12a2d8 (patch)
tree696db2d9457d2453ef640c5f337ff3c7d078c50e /source/slang/slang-check-decl.cpp
parent02706dfc5f0526f4f8ca337be16d7b00640ba168 (diff)
Fix regression when using Atomic<T> in struct. (#6472)
Diffstat (limited to 'source/slang/slang-check-decl.cpp')
-rw-r--r--source/slang/slang-check-decl.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/slang/slang-check-decl.cpp b/source/slang/slang-check-decl.cpp
index 1659a161b..f12d11bdf 100644
--- a/source/slang/slang-check-decl.cpp
+++ b/source/slang/slang-check-decl.cpp
@@ -12441,10 +12441,13 @@ bool SemanticsDeclAttributesVisitor::_synthesizeCtorSignature(StructDecl* struct
{
auto member = resultMembers[i];
auto parentAggDecl = getParentAggTypeDecl(member);
- ;
auto ctorParam = m_astBuilder->create<ParamDecl>();
ctorParam->type = (TypeExp)member->type;
+ if (auto atomicType = as<AtomicType>(ctorParam->type))
+ {
+ ctorParam->type.type = atomicType->getElementType();
+ }
if (!stopProcessingDefaultValues)
ctorParam->initExpr = _getParamDefaultValue(this, member);