[FFmpeg-devel] [PATCH 1/3] avutil/avassert: Add av_assert_unreachable()

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sat Jul 13 03:47:33 EEST 2024


Marvin Scholz:
> ---
>  libavutil/avassert.h | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/libavutil/avassert.h b/libavutil/avassert.h
> index 1895fb7551..cdab912fe4 100644
> --- a/libavutil/avassert.h
> +++ b/libavutil/avassert.h
> @@ -75,4 +75,16 @@
>   */
>  void av_assert0_fpu(void);
>  
> +/**
> + * Assert this can not be reached
> + */
> +#if AV_HAS_BUILTIN(__builtin_unreachable)
> +#define av_assert_unreachable() do {   \
> +    av_assert2(0);                      \
> +    __builtin_unreachable();            \
> +} while (0)
> +#else
> +#define av_assert_unreachable() av_assert2(0)
> +#endif
> +
>  #endif /* AVUTIL_AVASSERT_H */
> 
> base-commit: 85706f5136cf7c88f95843b2634dd3f7d7d2cb6d

You are not the first one with this idea:
https://ffmpeg.org/pipermail/ffmpeg-devel/2024-May/328116.html
But Michael Niedermayer thinks that adding a new macro instead of
directly reusing av_assert is more complicated.

- Andreas



More information about the ffmpeg-devel mailing list