[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3] automation/eclair_analysis: deviate and|or|xor|not for MISRA C Rule 21.2
On Mon, 24 Jun 2024, Alessandro Zucchelli wrote: > Rule 21.2 reports identifiers reserved for the C and POSIX standard > libraries: or, and, not and xor are reserved identifiers because they > constitute alternate spellings for the corresponding operators (they are > defined as macros by iso646.h); however Xen doesn't use standard library > headers, so there is no risk of overlap. > > This addresses violations arising from x86_emulate/x86_emulate.c, where > label statements named as or, and and xor appear. > > No functional change. > > Signed-off-by: Alessandro Zucchelli <alessandro.zucchelli@xxxxxxxxxxx> > Acked-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> Hi Oleksii, I am asking for a release-ack as this patch adds a deviation, the only impact is fewer violations from the ECLAIR analysis > --- > Changes from v2: > Fixed patch contents as the changes from v1 and v2 were not squashed together. > --- > Changes from v1: > Added deviation for 'not' identifier. > Added explanation of where these identifiers are defined, specifically in the > 'iso646.h' file of the Standard Library. > --- > automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl > b/automation/eclair_analysis/ECLAIR/deviations.ecl > index 9fa9a7f01c..14c7afb39e 100644 > --- a/automation/eclair_analysis/ECLAIR/deviations.ecl > +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl > @@ -498,6 +498,12 @@ still remain available." > -config=MC3R1.R21.2,declarations+={safe, "!^__builtin_.*$"} > -doc_end > > +-doc_begin="or, and and xor are reserved identifiers because they constitute > alternate > +spellings for the corresponding operators (they are defined as macros by > iso646.h). > +However, Xen doesn't use standard library headers, so there is no risk of > overlap." > +-config=MC3R1.R21.2,reports+={safe, > "any_area(stmt(ref(kind(label)&&^(or|and|xor|not)$)))"} > +-doc_end > + > -doc_begin="Xen does not use the functions provided by the Standard Library, > but > implements a set of functions that share the same names as their Standard > Library equivalent. > The implementation of these functions is available in source form, so the > undefined, unspecified > -- > 2.34.1 >
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |