On 23.04.2025 22:37, Stefano Stabellini wrote:
> On Wed, 23 Apr 2025, Jan Beulich wrote:
>> On 23.04.2025 01:43, victorm.l...@amd.com wrote:
>>> From: Nicola Vetrini <nicola.vetr...@bugseng.com>
>>>
>>> MISRA C Rules 21.1 ("#define and #undef shall not be used on a
>>> reserved identifier or reserved macro name") and R21.2 ("A reserved
>>> identifier or reserved macro name shall not be declared") violations
>>> are not problematic for Xen, as it does not use the C or POSIX
>>> libraries.
>>
>> In the course of all the Misra discussions it was pointed out more than
>> once that it's not just the titles which matter, but also the
>> "Amplification" text. While the latter two of the three bullet points
>> applying to both rules clearly are library-centric, the first one isn't.
>> In that light it's entirely unclear to me how ...
>>
>>> Xen uses -fno-builtin and -nostdinc to ensure this, but there are still
>>> __builtin_* functions from the compiler that are available so
>>> a deviation is formulated for all identifiers not starting with
>>> "__builtin_".
>>>
>>> The missing text of a deviation for Rule 21.2 is added to
>>> docs/misra/deviations.rst.
>>>
>>> To avoid regressions, tag both rules as clean and add them to the
>>> monitored set.
>>
>> ... our code base could be anywhere near clean towards these two rules.
> 
> 
> Given the section these two rules belong to "Standard libraries" and
> given the rest of the rule description, it is clear to me that the
> conflicts and undefined behaviors the two rules are trying to prevent
> are conflicts with C or POSIX libraries. Nicola is the original author
> of the patch and he has more experience with MISRA and I would trust
> his interpretation.

Then is there _another_ rule dealing with the remaining reserved
identifier space?

Jan

Reply via email to