use the 'aborts' pragma of Watcom for SDL_NORETURN functions SDL_ExitProcess(), SDL_AbortAssertion() and SDLTest_BailOut(). (Commit 303c1e0fb0cf for bug #4100 removed SDL_NORETURN from SDL_ExitProcess() and SDL_AbortAssertion() in order to avoid warnings from windows builds, but that's temporary I guess..)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
diff --git a/src/SDL_assert.c b/src/SDL_assert.c
index 355637d..1ca083a 100644
--- a/src/SDL_assert.c
+++ b/src/SDL_assert.c
@@ -120,6 +120,9 @@ static void SDL_GenerateAssertionReport(void)
}
+#if defined(__WATCOMC__)
+#pragma aux SDL_ExitProcess aborts;
+#endif
static void SDL_ExitProcess(int exitcode)
{
#ifdef __WIN32__
@@ -138,6 +141,9 @@ static void SDL_ExitProcess(int exitcode)
}
+#if defined(__WATCOMC__)
+#pragma aux SDL_AbortAssertion aborts;
+#endif
static void SDL_AbortAssertion(void)
{
SDL_Quit();
diff --git a/src/test/SDL_test_harness.c b/src/test/SDL_test_harness.c
index 15021c6..80b0794 100644
--- a/src/test/SDL_test_harness.c
+++ b/src/test/SDL_test_harness.c
@@ -206,6 +206,9 @@ SDLTest_SetTestTimeout(int timeout, void (*callback)())
/**
* \brief Timeout handler. Aborts test run and exits harness process.
*/
+#if defined(__WATCOMC__)
+#pragma aux SDLTest_BailOut aborts;
+#endif
static SDL_NORETURN void
SDLTest_BailOut()
{