summaryrefslogtreecommitdiff
path: root/source/slang/slang-lower-to-ir.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-04-14 08:12:14 -0700
committerGitHub <noreply@github.com>2023-04-14 23:12:14 +0800
commit168c58389e9155312a8cef88d986a4ceee5a511e (patch)
tree1f1cda0335e8ecc6f25af2e94f369214198050d0 /source/slang/slang-lower-to-ir.cpp
parent4c9c8a7a4d9b97fec6041a562638fbea521533ed (diff)
Diagnose on using uninitialized `out` param. (#2803)
* Diagnose on using uninitialized `out` param. * Hack to allow `out Vertices<T>`. * Fix. --------- Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-lower-to-ir.cpp')
-rw-r--r--source/slang/slang-lower-to-ir.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/source/slang/slang-lower-to-ir.cpp b/source/slang/slang-lower-to-ir.cpp
index 1fba0e2f8..8cceaff02 100644
--- a/source/slang/slang-lower-to-ir.cpp
+++ b/source/slang/slang-lower-to-ir.cpp
@@ -26,6 +26,7 @@
#include "slang-ir-clone.h"
#include "slang-ir-lower-error-handling.h"
#include "slang-ir-obfuscate-loc.h"
+#include "slang-ir-use-uninitialized-out-param.h"
#include "slang-mangle.h"
#include "slang-type-layout.h"
@@ -9608,6 +9609,9 @@ RefPtr<IRModule> generateIRForTranslationUnit(
// TODO: give error messages if any `undefined` or
// `unreachable` instructions remain.
+ // Check for using uninitialized out parameters.
+ checkForUsingUninitializedOutParams(module, compileRequest->getSink());
+
checkForMissingReturns(module, compileRequest->getSink());
// Check for invalid differentiable function body.