[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v2] misra: add R21.1 R21.2
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@xxxxxxx> --- Changes in v2: - remove R14.4 - update note section of 21.1 --- docs/misra/rules.rst | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) 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 -- 2.25.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |