Message ID | alpine.DEB.2.22.394.2311141458020.160649@ubuntu-linux-20-04-desktop (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] misra: add R21.1 R21.2 | expand |
On 14.11.2023 23:59, Stefano Stabellini wrote: > Add 21.1 and 21.2, with a longer comment to explain how strategy with > leading underscores and why we think we are safe today. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> Acked-by: Jan Beulich <jbeulich@suse.com> with one nit: > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -519,6 +519,28 @@ maintainers if you want to suggest a change. > they are related > - > > + * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_ > + - Required > + - #define and #undef shall not be used on a reserved identifier or > + reserved macro name > + - Identifiers starting with an underscore followed by another underscore > + or an upper-case letter are reserved. Today Xen uses many, such as > + header guards and bitwise manipulation functions. Upon analysis it turns > + out Xen identifiers do not clash with the identifiers used by modern > + GCC, but that is not a guarantee that there won't be a naming clash in > + the future or with another compiler. For these reasons we discourage > + the introduction of new reserved identifiers in Xen, and we see it as > + positive the reduction of reserved identifiers. At the same time, > + certain identifiers starting with an underscore are also commonly used > + in Linux (e.g. __set_bit) and we don't think it would be an improvement > + to rename them. I think this last sentence would also better say "two underscores". Jan
On Wed, 15 Nov 2023, Jan Beulich wrote: > On 14.11.2023 23:59, Stefano Stabellini wrote: > > Add 21.1 and 21.2, with a longer comment to explain how strategy with > > leading underscores and why we think we are safe today. > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> > > Acked-by: Jan Beulich <jbeulich@suse.com> > with one nit: > > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -519,6 +519,28 @@ maintainers if you want to suggest a change. > > they are related > > - > > > > + * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_ > > + - Required > > + - #define and #undef shall not be used on a reserved identifier or > > + reserved macro name > > + - Identifiers starting with an underscore followed by another underscore > > + or an upper-case letter are reserved. Today Xen uses many, such as > > + header guards and bitwise manipulation functions. Upon analysis it turns > > + out Xen identifiers do not clash with the identifiers used by modern > > + GCC, but that is not a guarantee that there won't be a naming clash in > > + the future or with another compiler. For these reasons we discourage > > + the introduction of new reserved identifiers in Xen, and we see it as > > + positive the reduction of reserved identifiers. At the same time, > > + certain identifiers starting with an underscore are also commonly used > > + in Linux (e.g. __set_bit) and we don't think it would be an improvement > > + to rename them. > > I think this last sentence would also better say "two underscores". Done on commit
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index da343ab3ac..375a886607 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -519,6 +519,28 @@ maintainers if you want to suggest a change. they are related - + * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_ + - Required + - #define and #undef shall not be used on a reserved identifier or + reserved macro name + - Identifiers starting with an underscore followed by another underscore + or an upper-case letter are reserved. Today Xen uses many, such as + header guards and bitwise manipulation functions. Upon analysis it turns + out Xen identifiers do not clash with the identifiers used by modern + GCC, but that is not a guarantee that there won't be a naming clash in + the future or with another compiler. For these reasons we discourage + the introduction of new reserved identifiers in Xen, and we see it as + positive the reduction of reserved identifiers. At the same time, + certain identifiers starting with an underscore are also commonly used + in Linux (e.g. __set_bit) and we don't think it would be an improvement + to rename them. + + * - `Rule 21.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_02.c>`_ + - Required + - A reserved identifier or reserved macro name shall not be + declared + - See comment for Rule 21.1 + * - `Rule 21.13 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_13.c>`_ - Mandatory - Any value passed to a function in <ctype.h> shall be representable as an
Add 21.1 and 21.2, with a longer comment to explain how strategy with leading underscores and why we think we are safe today. Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> --- Changes in v2: - remove R14.4 - update note section of 21.1 --- docs/misra/rules.rst | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+)