summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-lower-error-handling.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2022-11-18 12:37:27 -0800
committerGitHub <noreply@github.com>2022-11-18 12:37:27 -0800
commitd58e08f8237a1888ceaad53402d534679ea83b1a (patch)
treee66838e0dc31fc12ebd7c1acecbb5060e8808366 /source/slang/slang-ir-lower-error-handling.cpp
parent0a050a439fa91b66f2020421d4fec3e60aed4112 (diff)
Data flow validation pass for diagnosing derivative loss. (#2523)
Diffstat (limited to 'source/slang/slang-ir-lower-error-handling.cpp')
-rw-r--r--source/slang/slang-ir-lower-error-handling.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/source/slang/slang-ir-lower-error-handling.cpp b/source/slang/slang-ir-lower-error-handling.cpp
index 387ab45b4..e9747e3b6 100644
--- a/source/slang/slang-ir-lower-error-handling.cpp
+++ b/source/slang/slang-ir-lower-error-handling.cpp
@@ -90,6 +90,8 @@ struct ErrorHandlingLoweringContext
args.add(tryCall->getArg(i));
}
auto call = builder.emitCallInst(resultType, tryCall->getCallee(), args);
+ tryCall->transferDecorationsTo(call);
+
auto isFail = builder.emitIsResultError(call);
auto failBlock = tryCall->getFailureBlock();
auto successBlock = tryCall->getSuccessBlock();