diff --git a/libavutil/avassert.h b/libavutil/avassert.h index 8dbdb01566..f4f039dfb0 100644 --- a/libavutil/avassert.h +++ b/libavutil/avassert.h @@ -101,7 +101,6 @@ do { \ #define av_unreachable(msg) __builtin_unreachable() #elif defined(_MSC_VER) #define av_unreachable(msg) __assume(0) -#define av_assume(cond) __assume(cond) #elif __STDC_VERSION__ >= 202311L #include #define av_unreachable(msg) unreachable() @@ -109,7 +108,11 @@ do { \ #define av_unreachable(msg) ((void)0) #endif -#ifndef av_assume +#if AV_HAS_BUILTIN(__builtin_assume) +#define av_assume(cond) __builtin_assume(cond) +#elif defined(_MSC_VER) +#define av_assume(cond) __assume(cond) +#else #define av_assume(cond) do { \ if (!(cond)) \ av_unreachable(); \