Rule 21.2 reports identifiers reserved for the C and POSIX standard libraries: all xen's translation units are compiled with option -nostdinc, this guarantees that these libraries are not used, therefore a justification is provided for allowing uses of such identifiers in the project. Builtins starting with "__builtin_" still remain available.
No functional change. Signed-off-by: Alessandro Zucchelli <alessandro.zucche...@bugseng.com> --- automation/eclair_analysis/ECLAIR/deviations.ecl | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl index 447c1e6661..9fa9a7f01c 100644 --- a/automation/eclair_analysis/ECLAIR/deviations.ecl +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl @@ -487,6 +487,17 @@ leads to a violation of the Rule are deviated." # Series 21. # +-doc_begin="Rules 21.1 and 21.2 report identifiers reserved for the C and POSIX +standard libraries: if these libraries are not used there is no reason to avoid such +identifiers. All xen's translation units are compiled with option -nostdinc, +this guarantees that these libraries are not used. Some compilers could perform +optimization using built-in functions: this risk is partially addressed by +using the compilation option -fno-builtin. Builtins starting with \"__builtin_\" +still remain available." +-config=MC3R1.R21.1,macros={safe , "!^__builtin_$" } +-config=MC3R1.R21.2,declarations+={safe, "!^__builtin_.*$"} +-doc_end + -doc_begin="Xen does not use the functions provided by the Standard Library, but implements a set of functions that share the same names as their Standard Library equivalent. The implementation of these functions is available in source form, so the undefined, unspecified -- 2.34.1