Defining NDEBUG via CFLAGS is the canonical way to disable assertions in C. mpv respects this (and ta.c actually disables some debugging machinery if it's defined). But for tests, this is not useful at all. So if --enable-tests is passed to configure, the user must not define NDEBUG, even if the rest of the player does not care. (We could just #undef NDEBUG, but let's not. Tests calling into the rest of the player might depend on asserts there, or so.)
Showing the changes to test (1 of 1 file). Show all
Unified · Split
| @@ -51,3 +51,7 @@ bool run_tests(struct MPContext *mpctx) · 50 unmodified lines | ||
| 51 | 51 | |
| 52 | 52 | return num_run > 0; // still error if none |
| 53 | 53 | } |
| 54 | + | |
| 55 | +#ifdef NDEBUG | |
| 56 | +static_assert(false, "don't define NDEBUG for tests"); | |
| 57 | +#endif | |