| -project_name=getenv("ECLAIR_PROJECT_NAME") |
| -project_root=getenv("ECLAIR_PROJECT_ROOT") |
| |
| -setq=data_dir,getenv("ECLAIR_DATA_DIR") |
| |
| -enable=B.REPORT.ECB |
| -config=B.REPORT.ECB,output=join_paths(data_dir,"FRAME.@FRAME@.ecb") |
| -config=B.REPORT.ECB,preprocessed=show |
| -config=B.REPORT.ECB,macros=10 |
| -config=B.REPORT.ECB,tags=show |
| |
| -enable=B.EXPLAIN |
| |
| -doc_begin="See https://developer.trustedfirmware.org/w/tf_a/tf-a-misra-analysis/" |
| # "Any implementation-defined behaviour on which the output of the program depends shall be documented and understood." |
| # This requires configuring gazillion of generic parameters, where relation is mostly |
| # not configured == warning, configured == no warning. Return to this later. |
| #-enable=MC3R1.D1.1 |
| -enable=MC3R1.D2.1 |
| -enable=MC3R1.D4.1 |
| -enable=MC3R1.D4.2 |
| -enable=MC3R1.D4.3 |
| -enable=MC3R1.D4.4 |
| -doc="'Information' reports apply to #ifdef'ed code, don't show real problems, just add noise." |
| -config=MC3R1.D4.4,reports+={hide,"kind(information)"} |
| -enable=MC3R1.D4.5 |
| -enable=MC3R1.D4.7 |
| -enable=MC3R1.D4.10 |
| -enable=MC3R1.D4.11 |
| -enable=MC3R1.D4.12 |
| -enable=MC3R1.D4.13 |
| -enable=MC3R1.D4.14 |
| -enable=MC3R1.R1.1 |
| |
| -enable=MC3R1.R1.2 |
| -doc_begin="TODO: Contains bare instances of __builtin_offsetof, should be wrapped in macro" |
| -config=MC3R1.R1.2,reports+={todo,"all_area(all_loc(^include/drivers/console_assertions.h$))"} |
| -config=MC3R1.R1.2,reports+={todo,"all_area(all_loc(^include/common/ep_info.h$))"} |
| -doc_end |
| |
| -enable=MC3R1.R1.3 |
| |
| -enable=MC3R1.R2.1 |
| -doc="When logging is disabled, no_tf_log() is expected to contain special unreachable code pattern." |
| -config=MC3R1.R2.1,reports+={safe,"any_area(all_loc(macro(^no_tf_log$)))"} |
| -doc="Silence warning about unreachable null statement. TODO: Better wrap macro in do {...} while (0) pattern." |
| -config=MC3R1.R2.1,reports+={safe,"any_area(kind(culprit)&&^null statement is unreachable$)"} |
| |
| -enable=MC3R1.R2.2 |
| -enable=MC3R1.R2.3 |
| -enable=MC3R1.R2.6 |
| -enable=MC3R1.R3.1 |
| -enable=MC3R1.R3.2 |
| -enable=MC3R1.R4.1 |
| -enable=MC3R1.R4.2 |
| -enable=MC3R1.R5.2 |
| -enable=MC3R1.R5.3 |
| -enable=MC3R1.R5.4 |
| -enable=MC3R1.R5.5 |
| -enable=MC3R1.R5.6 |
| -enable=MC3R1.R5.7 |
| -enable=MC3R1.R5.9 |
| -enable=MC3R1.R6.1 |
| -enable=MC3R1.R6.2 |
| -enable=MC3R1.R7.1 |
| -enable=MC3R1.R7.2 |
| -enable=MC3R1.R7.3 |
| -enable=MC3R1.R7.4 |
| -enable=MC3R1.R8.1 |
| -enable=MC3R1.R8.2 |
| -enable=MC3R1.R8.3 |
| -enable=MC3R1.R8.4 |
| -enable=MC3R1.R8.5 |
| -enable=MC3R1.R8.8 |
| -enable=MC3R1.R8.9 |
| -enable=MC3R1.R8.10 |
| |
| -enable=MC3R1.R8.11 |
| -doc="This macro intended to deal with special linker-defined symbols like __TEXT_START__" |
| -config=MC3R1.R8.11,reports+={safe,"all_area(all_loc(macro(^IMPORT_SYM$)))"} |
| |
| -enable=MC3R1.R8.12 |
| -enable=MC3R1.R8.13 |
| -enable=MC3R1.R8.14 |
| -enable=MC3R1.R9.1 |
| -enable=MC3R1.R9.2 |
| -enable=MC3R1.R9.3 |
| -enable=MC3R1.R9.4 |
| -enable=MC3R1.R9.5 |
| -enable=MC3R1.R10.1 |
| -enable=MC3R1.R10.2 |
| -enable=MC3R1.R10.3 |
| -enable=MC3R1.R10.4 |
| -enable=MC3R1.R10.5 |
| -enable=MC3R1.R10.6 |
| -enable=MC3R1.R10.7 |
| -enable=MC3R1.R10.8 |
| -enable=MC3R1.R11.1 |
| -enable=MC3R1.R11.2 |
| -enable=MC3R1.R11.3 |
| -enable=MC3R1.R11.6 |
| -enable=MC3R1.R11.7 |
| -enable=MC3R1.R11.8 |
| -enable=MC3R1.R11.9 |
| -enable=MC3R1.R12.1 |
| -enable=MC3R1.R12.2 |
| -enable=MC3R1.R12.3 |
| -enable=MC3R1.R12.4 |
| -enable=MC3R1.R12.5 |
| -enable=MC3R1.R13.1 |
| -enable=MC3R1.R13.2 |
| -enable=MC3R1.R13.3 |
| -enable=MC3R1.R13.4 |
| -enable=MC3R1.R13.5 |
| -enable=MC3R1.R13.6 |
| -enable=MC3R1.R14.1 |
| -enable=MC3R1.R14.2 |
| |
| -enable=MC3R1.R14.3 |
| -doc="When logging is disabled, no_tf_log() is expected to contain special unreachable code pattern." |
| -config=MC3R1.R14.3,reports+={safe,"any_area(all_loc(macro(^no_tf_log$)))"} |
| |
| -enable=MC3R1.R14.4 |
| -enable=MC3R1.R15.2 |
| -enable=MC3R1.R15.3 |
| -enable=MC3R1.R15.4 |
| -enable=MC3R1.R15.7 |
| -enable=MC3R1.R16.2 |
| -enable=MC3R1.R16.4 |
| -enable=MC3R1.R16.5 |
| -enable=MC3R1.R16.6 |
| -enable=MC3R1.R16.7 |
| -enable=MC3R1.R17.2 |
| -enable=MC3R1.R17.3 |
| -enable=MC3R1.R17.4 |
| -enable=MC3R1.R17.5 |
| -enable=MC3R1.R17.6 |
| -enable=MC3R1.R17.7 |
| -enable=MC3R1.R17.8 |
| -enable=MC3R1.R18.1 |
| -enable=MC3R1.R18.2 |
| -enable=MC3R1.R18.3 |
| -enable=MC3R1.R18.4 |
| -enable=MC3R1.R18.5 |
| -enable=MC3R1.R18.6 |
| -enable=MC3R1.R18.7 |
| -enable=MC3R1.R18.8 |
| -enable=MC3R1.R19.1 |
| -enable=MC3R1.R19.2 |
| -enable=MC3R1.R20.1 |
| -enable=MC3R1.R20.2 |
| -enable=MC3R1.R20.3 |
| -enable=MC3R1.R20.4 |
| -enable=MC3R1.R20.5 |
| -enable=MC3R1.R20.6 |
| -enable=MC3R1.R20.7 |
| -enable=MC3R1.R20.8 |
| -enable=MC3R1.R20.9 |
| -enable=MC3R1.R20.10 |
| -enable=MC3R1.R20.11 |
| -enable=MC3R1.R20.12 |
| -enable=MC3R1.R20.13 |
| -enable=MC3R1.R20.14 |
| -enable=MC3R1.R21.1 |
| |
| -enable=MC3R1.R21.2 |
| -doc="This macro intended to deal with special linker-defined symbols like __TEXT_START__" |
| -config=MC3R1.R21.2,reports+={safe,"all_area(all_loc(macro(^IMPORT_SYM$)))"} |
| |
| -enable=MC3R1.R21.3 |
| -enable=MC3R1.R21.4 |
| -enable=MC3R1.R21.5 |
| -enable=MC3R1.R21.7 |
| -enable=MC3R1.R21.8 |
| -enable=MC3R1.R21.9 |
| -enable=MC3R1.R21.10 |
| -enable=MC3R1.R21.11 |
| -enable=MC3R1.R21.12 |
| -enable=MC3R1.R21.13 |
| -enable=MC3R1.R21.14 |
| -enable=MC3R1.R21.15 |
| -enable=MC3R1.R21.16 |
| -enable=MC3R1.R21.17 |
| -enable=MC3R1.R21.18 |
| -enable=MC3R1.R21.19 |
| -enable=MC3R1.R21.20 |
| -enable=MC3R1.R22.1 |
| -enable=MC3R1.R22.2 |
| -enable=MC3R1.R22.3 |
| -enable=MC3R1.R22.4 |
| -enable=MC3R1.R22.5 |
| -enable=MC3R1.R22.6 |
| -enable=MC3R1.R22.7 |
| -enable=MC3R1.R22.8 |
| -enable=MC3R1.R22.9 |
| -enable=MC3R1.R22.10 |
| -doc_end |
| |
| -eval_file=common_config.ecl |
| |
| -reports={hide,all_exp_external} |