From 38ed03a7203baacf36fca62539ac74fd45ed42d2 Mon Sep 17 00:00:00 2001 From: Yong He Date: Tue, 9 May 2023 09:44:33 -0700 Subject: Fix function side-effectness prop logic. (#2875) --- source/slang/slang-lower-to-ir.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'source/slang/slang-lower-to-ir.cpp') diff --git a/source/slang/slang-lower-to-ir.cpp b/source/slang/slang-lower-to-ir.cpp index de2d5aff2..ad338709d 100644 --- a/source/slang/slang-lower-to-ir.cpp +++ b/source/slang/slang-lower-to-ir.cpp @@ -7664,7 +7664,11 @@ struct DeclLoweringVisitor : DeclVisitor irAggType->moveToEnd(); addTargetIntrinsicDecorations(irAggType, decl); - + for (auto modifier : decl->modifiers) + { + if (as(modifier)) + subBuilder->addNonCopyableTypeDecoration(irAggType); + } return LoweredValInfo::simple(finishOuterGenerics(subBuilder, irAggType, outerGeneric)); } @@ -8779,6 +8783,10 @@ struct DeclLoweringVisitor : DeclVisitor { getBuilder()->addSimpleDecoration(irFunc); } + else if (as(modifier)) + { + getBuilder()->addSimpleDecoration(irFunc); + } else if (as(modifier)) { getBuilder()->addSimpleDecoration(irFunc); -- cgit v1.2.3