On Sun, 25 Feb 2024, David Laight <david.lai...@aculab.com> wrote:
> The wrapper just adds two more lines of error output when the test fails.

There are only a handful of places in kernel code that use
_Static_assert() directly. Nearly 900 instances of static_assert().

Are we now saying it's fine to use _Static_assert() directly all over
the place? People will copy-paste and cargo cult.

BR,
Jani.

>
> Signed-off-by: David Laight <david.lai...@aculab.com>
> ---
>  include/linux/minmax.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> Changes for v2:
> - Typographical and spelling corrections to the commit messages.
>   Patches unchanged.
>
> diff --git a/include/linux/minmax.h b/include/linux/minmax.h
> index 63c45865b48a..900eec7a28e5 100644
> --- a/include/linux/minmax.h
> +++ b/include/linux/minmax.h
> @@ -48,7 +48,7 @@
>  #define __cmp_once(op, x, y, unique_x, unique_y) ({  \
>       typeof(x) unique_x = (x);                       \
>       typeof(y) unique_y = (y);                       \
> -     static_assert(__types_ok(x, y),                 \
> +     _Static_assert(__types_ok(x, y),                        \
>               #op "(" #x ", " #y ") signedness error, fix types or consider 
> u" #op "() before " #op "_t()"); \
>       __cmp(op, unique_x, unique_y); })
>  
> @@ -137,11 +137,11 @@
>       typeof(val) unique_val = (val);                                         
> \
>       typeof(lo) unique_lo = (lo);                                            
> \
>       typeof(hi) unique_hi = (hi);                                            
> \
> -     static_assert(__builtin_choose_expr(__is_constexpr((lo) > (hi)),        
> \
> +     _Static_assert(__builtin_choose_expr(__is_constexpr((lo) > (hi)),       
> \
>                       (lo) <= (hi), true),                                    
> \
>               "clamp() low limit " #lo " greater than high limit " #hi);      
> \
> -     static_assert(__types_ok(val, lo), "clamp() 'lo' signedness error");    
> \
> -     static_assert(__types_ok(val, hi), "clamp() 'hi' signedness error");    
> \
> +     _Static_assert(__types_ok(val, lo), "clamp() 'lo' signedness error");   
> \
> +     _Static_assert(__types_ok(val, hi), "clamp() 'hi' signedness error");   
> \
>       __clamp(unique_val, unique_lo, unique_hi); })
>  
>  #define __careful_clamp(val, lo, hi) ({                                      
> \

-- 
Jani Nikula, Intel

Reply via email to