[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] automation/eclair_analysis: deviate and|or|xor|not for MISRA C Rule 21.2
commit 853f707cd9e2eb9410dbfbadbd5a01ac0252ef83 Author: Alessandro Zucchelli <alessandro.zucchelli@xxxxxxxxxxx> AuthorDate: Tue Jun 25 13:41:27 2024 -0700 Commit: Stefano Stabellini <stefano.stabellini@xxxxxxx> CommitDate: Tue Jun 25 13:41:27 2024 -0700 automation/eclair_analysis: deviate and|or|xor|not for MISRA C Rule 21.2 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> Release-Acked-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> --- 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 8f13dabeb1..dcff4f4013 100644 --- a/automation/eclair_analysis/ECLAIR/deviations.ecl +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl @@ -523,6 +523,12 @@ in the expansion." # Series 21. # +-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 -- generated by git-patchbot for /home/xen/git/xen.git#staging
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |