Looking at the usages, it's being used with a message, and always triggers the assertion. Maybe DYND_TRIGGER_ASSERT(message) would more clearly communicate that? With the current naming, saying DYND_ASSERT_WHAT(x < 3) feels like a reasonable thing to write, and I don't think that's the intention here.