Message ID | 83f4f9df2459f22690e6df98a43b3602c22bf27b.1696319475.git.federico.serafini@bugseng.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [XEN] automation/eclair: add deviations for MISRA C:2012 Rule 10.1 | expand |
On Tue, 3 Oct 2023, Federico Serafini wrote: > Update the configuration of ECLAIR to deviate some violations of Rule > 10.1 in accordance with docs/misra/rules.rst. > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org> > --- > automation/eclair_analysis/ECLAIR/deviations.ecl | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl > index d8170106b4..241aad6393 100644 > --- a/automation/eclair_analysis/ECLAIR/deviations.ecl > +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl > @@ -274,6 +274,18 @@ still non-negative." > -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"} > -doc_end > > +-doc_begin="XEN only supports architectures where signed integers are representend using two's complement and all the XEN developers are aware of this." > +-config=MC3R1.R10.1,etypes+={safe, > + "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))", > + "any()"} > +-doc_end > + > +-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that \"Signed `>>' acts on negative numbers by sign extension. As an extension to the C language, GCC does not use the latitude given in C99 and C11 only to treat certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and -fsanitize=undefined) will diagnose such cases. They are also diagnosed where constant expressions are required.\"" > +-config=MC3R1.R10.1,etypes+={safe, > + "stmt(operator(shl||shr||shl_assign||shr_assign))", > + "any()"} > +-doc_end > + > ### Set 3 ### > > # > -- > 2.34.1 >
diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl index d8170106b4..241aad6393 100644 --- a/automation/eclair_analysis/ECLAIR/deviations.ecl +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl @@ -274,6 +274,18 @@ still non-negative." -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"} -doc_end +-doc_begin="XEN only supports architectures where signed integers are representend using two's complement and all the XEN developers are aware of this." +-config=MC3R1.R10.1,etypes+={safe, + "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))", + "any()"} +-doc_end + +-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that \"Signed `>>' acts on negative numbers by sign extension. As an extension to the C language, GCC does not use the latitude given in C99 and C11 only to treat certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and -fsanitize=undefined) will diagnose such cases. They are also diagnosed where constant expressions are required.\"" +-config=MC3R1.R10.1,etypes+={safe, + "stmt(operator(shl||shr||shl_assign||shr_assign))", + "any()"} +-doc_end + ### Set 3 ### #
Update the configuration of ECLAIR to deviate some violations of Rule 10.1 in accordance with docs/misra/rules.rst. Signed-off-by: Federico Serafini <federico.serafini@bugseng.com> --- automation/eclair_analysis/ECLAIR/deviations.ecl | 12 ++++++++++++ 1 file changed, 12 insertions(+)