[PATCH v16 0/3] add diagnostics macros to make code portable
David Marchand
david.marchand at redhat.com
Wed Jan 29 14:26:06 CET 2025
On Tue, Jan 21, 2025 at 11:36 PM Andre Muezerie
<andremue at linux.microsoft.com> wrote:
>
> v16:
> * Updated comment for RTE_CAST_PTR.
>
> v15:
> * Fixed a comment in rte_common.h to make Doxygen happy.
> * Fixed a typo (extra comma).
> * Added missing RTE_PTR_UNQUAL needed for ARM64.
>
> v14:
> * Renamed RTE_PTR_DROP_QUALIFIERS into RTE_PTR_UNQUAL to more resemble
> C23 typeof_unqual.
> * Added macro RTE_CAST_PTR to make the cast more readable when removing
> a type qualifier from a pointer.
>
> v13:
> * Renamed RTE_IGNORE_CAST_QUAL into RTE_PTR_DROP_QUALIFIERS.
> * Added (void *) cast to RTE_PTR_DROP_QUALIFIERS to avoid the need
> for casting the result in most places where the macro is used.
>
> v12:
> * Added macro RTE_IGNORE_CAST_QUAL and used it as a more compact and
> readable form to suppress warnings where a cast is used to remove
> a type qualifier.
>
> v11:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v10:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v9:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v8:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v7:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v6:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v5:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v4:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v3:
> * Added __rte_diagnostic_ignored_wcast_qual to a few more places where
> it was needed.
>
> v2:
> * Removed __rte_diagnostic_ignored_wstrict_aliasing (introduced
> in v1).
> * Removed the pragmas from many files where they were not needed.
> * In the files where the pragmas were indeed needed, reduced the
> scope during which they are active, reducing the chance that
> unforeseen issues are hidden due to warning suppression.
>
> Andre Muezerie (3):
> eal: add diagnostics macros to make code portable
> drivers/common: add diagnostics macros to make code portable
> drivers/net: add diagnostics macros to make code portable
I moved a bit the casting macros in rte_common.h (and put them next to
RTE_CAST_FIELD).
Thanks for this work André, series applied.
Note: there is probably some cleaning to do in the rest of the tree:
$ git grep -l '(void \*)(uintptr_t)' | wc -l
92
--
David Marchand
More information about the dev
mailing list