summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorcheneym2 <acheney@nvidia.com>2024-11-05 17:28:36 -0500
committerGitHub <noreply@github.com>2024-11-05 17:28:36 -0500
commit4fa76f374c0c35c9c7d186e8addf6861e98baaec (patch)
tree0712545f51f15e62b70e89448e251f7d4df19406 /tools
parente22c0b72b8bedb330d8b20e488f6898f6c484187 (diff)
Catch all exceptions in render-test (#5495)
Catch all exceptions in render-test In MSVC, the /EHsc flag is used by default, it causes only C++ (synchronous) exceptions to be caught by try/catch blocks. The /EHa flag can instead be used to catch both synchronous C++ exceptions as well as structured asynchronous exceptions such as those seen in segfaults or other typical bugs. Using /EHa allows render-test to not crash completely if there is a buggy graphics driver in the system. Issue 5275
Diffstat (limited to 'tools')
-rw-r--r--tools/CMakeLists.txt1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 9af17b349..ef4d17556 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -276,6 +276,7 @@ if(SLANG_ENABLE_TESTS)
EXTRA_COMPILE_DEFINITIONS_PRIVATE
$<$<BOOL:${SLANG_ENABLE_CUDA}>:RENDER_TEST_CUDA>
$<$<BOOL:${SLANG_ENABLE_OPTIX}>:RENDER_TEST_OPTIX>
+ EXTRA_COMPILE_OPTIONS_PRIVATE /EHa
OUTPUT_NAME render-test-tool
REQUIRED_BY slang-test
FOLDER test/tools