1-setq=CPP_MANUAL,"https://gcc.gnu.org/onlinedocs/gcc-10.3.0/cpp.pdf"
2
3-doc="Selection for reports that are fully contained in adopted code."
4-report_selector+={adopted_report,"all_area(!kind(culprit||evidence)||all_loc(all_exp(adopted||pseudo)))"}
5
6-doc_begin="Adopted code is not meant to be read, reviewed or modified by human programmers:no developers' confusion is not possible. In addition, adopted code is assumed to work as is. Reports that are fully contained in adopted code are hidden/tagged with the 'adopted' tag."
7-config=MC3R1.R7.2,reports+={relied,adopted_report}
8-config=MC3R1.R10.3,reports+={relied,adopted_report}
9-config=MC3R1.R10.6,reports+={relied,adopted_report}
10-config=MC3R1.R12.1,reports+={relied,adopted_report}
11-doc_end
12
13-doc_begin="Macro LOAPIC_BASE_ADDRESS, automatically generated by Autoconf, expands to an implicitly unsigned literal lacking the 'u' or 'U' suffix."
14-config=MC3R1.R7.2,reports+={safe,"all_area(all_loc(any_exp(macro(^assert$))))"}
15-doc_end
16
17-doc="#include_next is a documented GNU preprocessing directive. See section \"2.7 Wrapper Headers\" of "CPP_MANUAL""
18-config=STD.prepdirc,directives+={safe,"^include_next$"}
19-doc="#warning is a documented GNU preprocessing directive. See section \"5 Diagnostics\" of "CPP_MANUAL""
20-config=STD.prepdirc,directives+={safe,"^warning$"}
21
22-doc="The declarations in files tagged with api:public define a public API of Zephyr.
23Declarations in these files not necessarily have to be referenced."
24-config=MC3R1.R2.3,declarations+={safe,"loc(top(public()))"}
25
26-doc="Library entry points not necessarily have to be referenced."
27-config=MC3R1.R2.1,declarations+={safe,"loc(top(public()))"}
28
29-doc="Library entry points not necessarily have to be referenced in more than one translation units."
30-config=MC3R1.R8.7,declarations+={safe,"loc(top(public()))"}
31
32-doc="Syscall declarations are automatically generated all with the extern qualifier. For the ones with internal linkage the use of the extern qualifier is a violation of rule 8.8."
33-config=MC3R1.R8.8,declarations={relied, "^z_vrfy_.*$||^z_impl_.*$"}
34
35-doc="Function hash, that is automatically generated, does not use the parameter \"len\" in all its definitions."
36-config=MC3R1.R2.7,declarations+={relied,"context(^hash\\(const char\\*, size_t\\)$)&&name(len)"}
37
38-doc="Function \"z_object_lookup\", that is automatically generated, uses single-statement bodies not enclosed in braces."
39-config=MC3R1.R15.6,reports={relied, "all_area(context(^z_object_lookup\\(const char\\*, size_t\\)$))"}
40
41-doc="The following declarations are in generated files: not in all configuration they are implemented.
42    Chainging the generators could be dangerous and the advantages in enforcing the rule do not outweight these dangers."
43-config=MC3R1.R8.6,declarations+={safe, "loc(top(file(^zephyr/build/zephyr/include/generated/.*$)))"}
44