|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XEN PATCH 01/13] misra: add deviation for headers that explicitly avoid guards
Some headers, under specific circumstances (documented in a comment at
the beginning of the file), explicitly avoid inclusion guards: the caller
is responsible for including them correctly.
These files are not supposed to comply with Directive 4.10:
"Precautions shall be taken in order to prevent the contents of a header
file being included more than once"
This patch adds a deviation for all headers that contain the following
in a comment text:
"In this case, no inclusion guards apply and the caller is responsible"
Signed-off-by: Simone Ballarin <simone.ballarin@xxxxxxxxxxx>
---
automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
docs/misra/rules.rst | 3 ++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl
b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..5f068377fa 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -91,6 +91,10 @@ conform to the directive."
-config=MC3R1.D4.10,reports+={safe, "first_area(text(^/\\* Generated file, do
not edit! \\*/$, begin-3))"}
-doc_end
+-doc_begin="Some headers, under specific circumstances, explicitly avoid
inclusion guards."
+-config=MC3R1.D4.10,reports+={safe, "first_area(text(^ \\* In this case, no
inclusion guards apply and the caller is responsible.*\\*/$, begin-1))"}
+-doc_end
+
#
# Series 5.
#
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index db30632b93..4b1a7b02b6 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -60,7 +60,8 @@ maintainers if you want to suggest a change.
- Precautions shall be taken in order to prevent the contents of a
header file being included more than once
- Files that are intended to be included more than once do not need to
- conform to the directive
+ conform to the directive. Files that explicitly avoid inclusion guards
+ under specific circumstances do not need to conform the directive.
* - `Dir 4.11
<https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_11.c>`_
- Required
--
2.34.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |