On 03/14/16 16:38, Leif Lindholm wrote: > To permit many existing platforms to build with -Wunused-parameter, on > GCC and CLANG, the unused parameters need to be annotated as such. > Existing regexp code already uses ARG_UNUSED for this, but it is really > needed across the codebase - so add a version in Base.h. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Leif Lindholm <[email protected]> > --- > > This is really the result of a friendly toolchain engineer informing me > CLANG has the -Weverything flag, to actually enable all possible > warnings. > > One problem trying to pick out the real bugs from the just not entirely > clear code is that basically a lot of *LibNull implementations, and > some libraries that should be usable, trip build failures due to unused > parameters. > > MdePkg/Include/Base.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h > index 89b2aed..f789094 100644 > --- a/MdePkg/Include/Base.h > +++ b/MdePkg/Include/Base.h > @@ -189,6 +189,15 @@ struct _LIST_ENTRY { > /// > #define OPTIONAL > > +/// > +/// Function argument intentionally unused in function. > +/// > +#if defined(__GNUC__) || defined(__clang__) > + #define ARG_UNUSED __attribute__ ((unused)) > +#else > + #define ARG_UNUSED > +#endif > + > // > // UEFI specification claims 1 and 0. We are concerned about the > // complier portability so we did it this way. >
Support for this seems to go back to gcc-4.4: https://gcc.gnu.org/onlinedocs/gcc-4.4.7/gcc/Variable-Attributes.html So it looks safe. (And I agree with the idea.) Acked-by: Laszlo Ersek <[email protected]> _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

