Skip to content

Add Code Quality analysis in the CI

Santiago Ospina De Los Ríos requested to merge feature/ci-code-checker into master

This MR adds C++ code quality report to one of the CI jobs via CodeChecker

  • Analysis: Reports of CodeChecker are exposed through the MR user interface as a drop down menu displaying each of the errors and position in code.
  • Customization: The analysis can be customized on the .codechecker/config.json file.
  • Enforcement: If any check fails, the MR pipeline will be marked as failed.
  • Analysers:
    • clang-tidy v11.0.1
    • cppcheck v2.3
    • gcc v10.2.1

To interact and learn from the same CodeChecker installed in the CI, access it via the Debian 11 docker image of our GitLab:

docker run registry.dune-project.org/docker/ci/debian:11 /duneci/venv/bin/CodeChecker --help
Click to expand all possible checks
abseil-duration-addition
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-addition.html
    severity:STYLE

abseil-duration-comparison
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-comparison.html
    severity:STYLE

abseil-duration-conversion-cast
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-conversion-cast.html
    severity:STYLE

abseil-duration-division
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-division.html
    severity:STYLE

abseil-duration-factory-float
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-factory-float.html
    severity:STYLE

abseil-duration-factory-scale
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-factory-scale.html
    severity:STYLE

abseil-duration-subtraction
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-subtraction.html
    severity:STYLE

abseil-duration-unnecessary-conversion
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/duration-unnecessary-conversion.html
    severity:STYLE

abseil-faster-strsplit-delimiter
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/faster-strsplit-delimiter.html
    severity:LOW

abseil-no-internal-dependencies
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/no-internal-dependencies.html
    severity:STYLE

abseil-no-namespace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/no-namespace.html
    severity:MEDIUM

abseil-redundant-strcat-calls
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/redundant-strcat-calls.html
    severity:LOW

abseil-str-cat-append
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/str-cat-append.html
    severity:LOW

abseil-string-find-startswith
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/string-find-startswith.html
    severity:LOW

abseil-string-find-str-contains
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/string-find-str-contains.html
    severity:LOW

abseil-time-comparison
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/time-comparison.html
    severity:STYLE

abseil-time-subtraction
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/time-subtraction.html
    severity:STYLE

abseil-upgrade-duration-conversions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/abseil/upgrade-duration-conversions.html
    severity:STYLE

android-cloexec-accept
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-accept.html
    severity:HIGH

android-cloexec-accept4
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-accept4.html
    severity:HIGH

android-cloexec-creat
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-creat.html
    severity:LOW

android-cloexec-dup
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-dup.html
    severity:HIGH

android-cloexec-epoll-create
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-epoll-create.html
    severity:LOW

android-cloexec-epoll-create1
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-epoll-create1.html
    severity:HIGH

android-cloexec-fopen
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-fopen.html
    severity:HIGH

android-cloexec-inotify-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-inotify-init.html
    severity:LOW

android-cloexec-inotify-init1
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-inotify-init1.html
    severity:HIGH

android-cloexec-memfd-create
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-memfd-create.html
    severity:HIGH

android-cloexec-open
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-open.html
    severity:HIGH

android-cloexec-pipe
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-pipe.html
    severity:HIGH

android-cloexec-pipe2
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-pipe2.html
    severity:HIGH

android-cloexec-socket
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/cloexec-socket.html
    severity:HIGH

android-comparison-in-temp-failure-retry
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/android/comparison-in-temp-failure-retry.html
    severity:MEDIUM

boost-use-to-string
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/boost/use-to-string.html
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-argument-comment
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/argument-comment.html
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-bad-signal-to-kill-thread
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.html
    guideline:sei-cert
    profile:extreme
    profile:sensitive
    sei-cert:pos44-c
    severity:MEDIUM

bugprone-branch-clone
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/branch-clone.html
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-exception-escape
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/exception-escape.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl57-cpp
    sei-cert:err55-cpp
    sei-cert:msc53-cpp
    severity:MEDIUM

bugprone-macro-parentheses
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-parentheses.html
    profile:extreme
    severity:MEDIUM

bugprone-multiple-statement-macro
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/multiple-statement-macro.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-narrowing-conversions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/narrowing-conversions.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:exp45-c
    sei-cert:fio34-c
    sei-cert:flp34-c
    sei-cert:flp36-c
    severity:MEDIUM

bugprone-no-escape
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/no-escape.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-parent-virtual-call
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/parent-virtual-call.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-posix-return
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/posix-return.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-reserved-identifier
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/reserved-identifier.html
    profile:extreme
    severity:LOW

bugprone-spuriously-wake-up-functions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/spuriously-wake-up-functions.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-string-integer-assignment
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/string-integer-assignment.html
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-suspicious-include
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-include.html
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-suspicious-string-compare
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-string-compare.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-unhandled-self-assignment
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unhandled-self-assignment.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop54-cpp
    severity:MEDIUM

cert-con36-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/con36-c.html
    profile:extreme
    profile:security
    profile:sensitive
    severity:MEDIUM

cert-con54-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/con54-cpp.html
    profile:extreme
    profile:security
    profile:sensitive
    severity:MEDIUM

cert-dcl03-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl03-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl03-c
    severity:MEDIUM

cert-dcl16-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl16-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl16-c
    severity:STYLE

cert-dcl21-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl21-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl21-cpp
    severity:LOW

cert-dcl37-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl37-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    sei-cert:dcl37-c
    severity:LOW

cert-dcl50-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl50-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl50-cpp
    severity:LOW

cert-dcl51-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl51-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    sei-cert:dcl51-cpp
    severity:LOW

cert-env33-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/env33-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:env33-c
    severity:MEDIUM

cert-err34-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err34-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err34-c
    severity:LOW

cert-err52-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err52-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err52-cpp
    severity:LOW

cert-err58-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err58-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err58-cpp
    severity:LOW

cert-err60-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err60-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err60-cpp
    severity:MEDIUM

cert-err61-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err61-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err61-cpp
    severity:HIGH

cert-flp30-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/flp30-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:flp30-c
    severity:HIGH

cert-msc30-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc30-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:msc30-c
    sei-cert:msc50-cpp
    severity:LOW

cert-msc32-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc32-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:msc32-c
    sei-cert:msc51-cpp
    severity:MEDIUM

cert-msc50-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc50-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:msc30-c
    sei-cert:msc50-cpp
    severity:LOW

cert-msc51-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc51-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:msc51-cpp
    severity:MEDIUM

cert-oop54-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop54-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop54-cpp
    severity:MEDIUM

cert-oop57-cpp
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop57-cpp.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop57-cpp
    severity:HIGH

cert-str34-c
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/str34-c.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:str34-c
    severity:MEDIUM

cppcoreguidelines-avoid-c-arrays
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-c-arrays.html
    profile:extreme
    severity:LOW

cppcoreguidelines-avoid-goto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-goto.html
    profile:extreme
    severity:STYLE

cppcoreguidelines-avoid-magic-numbers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-magic-numbers.html
    profile:extreme
    severity:STYLE

cppcoreguidelines-avoid-non-const-global-variables
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables.html
    profile:extreme
    severity:LOW

cppcoreguidelines-c-copy-assignment-signature
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/c-copy-assignment-signature.html
    profile:extreme
    severity:MEDIUM

cppcoreguidelines-explicit-virtual-functions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/explicit-virtual-functions.html
    profile:extreme
    severity:LOW

cppcoreguidelines-init-variables
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/init-variables.html
    profile:extreme
    severity:MEDIUM

cppcoreguidelines-interfaces-global-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/interfaces-global-init.html
    profile:extreme
    severity:LOW

cppcoreguidelines-macro-usage
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/macro-usage.html
    profile:extreme
    severity:LOW

cppcoreguidelines-narrowing-conversions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/narrowing-conversions.html
    severity:MEDIUM

cppcoreguidelines-no-malloc
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/no-malloc.html
    profile:extreme
    severity:LOW

cppcoreguidelines-non-private-member-variables-in-classes
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/non-private-member-variables-in-classes.html
    profile:extreme
    severity:LOW

cppcoreguidelines-owning-memory
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/owning-memory.html
    profile:extreme
    severity:STYLE

cppcoreguidelines-pro-bounds-array-to-pointer-decay
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-bounds-array-to-pointer-decay.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-bounds-constant-array-index
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-bounds-pointer-arithmetic
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-bounds-pointer-arithmetic.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-type-const-cast
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-const-cast.html
    guideline:sei-cert
    profile:extreme
    profile:sensitive
    sei-cert:exp55-cpp
    severity:LOW

cppcoreguidelines-pro-type-cstyle-cast
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-cstyle-cast.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-type-member-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-type-reinterpret-cast
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-reinterpret-cast.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-type-static-cast-downcast
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-static-cast-downcast.html
    profile:extreme
    profile:sensitive
    severity:LOW

cppcoreguidelines-pro-type-union-access
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-union-access.html
    profile:extreme
    severity:LOW

cppcoreguidelines-pro-type-vararg
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-vararg.html
    profile:extreme
    severity:LOW

cppcoreguidelines-slicing
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/slicing.html
    guideline:sei-cert
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop51-cpp
    severity:LOW

cppcoreguidelines-special-member-functions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/special-member-functions.html
    profile:extreme
    profile:sensitive
    severity:LOW

darwin-avoid-spinlock
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/darwin/avoid-spinlock.html

darwin-dispatch-once-nonstatic
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/darwin/dispatch-once-nonstatic.html

fuchsia-default-arguments-calls
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/default-arguments-calls.html

fuchsia-default-arguments-declarations
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/default-arguments-declarations.html

fuchsia-header-anon-namespaces
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/header-anon-namespaces.html

fuchsia-multiple-inheritance
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/multiple-inheritance.html

fuchsia-overloaded-operator
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/overloaded-operator.html

fuchsia-statically-constructed-objects
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/statically-constructed-objects.html

fuchsia-trailing-return
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/trailing-return.html

fuchsia-virtual-inheritance
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/fuchsia/virtual-inheritance.html

google-build-explicit-make-pair
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/build-explicit-make-pair.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

google-build-using-namespace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/build-using-namespace.html
    profile:extreme
    profile:sensitive
    severity:STYLE

google-default-arguments
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/default-arguments.html
    profile:extreme
    severity:LOW

google-explicit-constructor
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/explicit-constructor.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

google-global-names-in-headers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/global-names-in-headers.html
    profile:extreme
    profile:sensitive
    severity:STYLE

google-objc-avoid-nsobject-new
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/objc-avoid-nsobject-new.html
    profile:extreme

google-objc-avoid-throwing-exception
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/objc-avoid-throwing-exception.html
    profile:extreme

google-objc-function-naming
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/objc-function-naming.html
    profile:extreme

google-objc-global-variable-declaration
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/objc-global-variable-declaration.html
    profile:extreme

google-readability-avoid-underscore-in-googletest-name
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-avoid-underscore-in-googletest-name.html
    profile:extreme
    severity:STYLE

google-readability-braces-around-statements
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-braces-around-statements.html
    guideline:misra-c
    misra-c:14.9
    profile:extreme
    severity:STYLE

google-readability-casting
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-casting.html
    profile:extreme
    severity:LOW

google-readability-function-size
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-function-size.html
    profile:extreme
    severity:STYLE

google-readability-namespace-comments
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-namespace-comments.html
    profile:extreme
    severity:STYLE

google-readability-todo
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/readability-todo.html
    profile:extreme
    severity:STYLE

google-runtime-int
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/runtime-int.html
    profile:extreme
    profile:sensitive
    severity:LOW

google-runtime-operator
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/runtime-operator.html
    profile:extreme
    profile:sensitive
    severity:MEDIUM

google-runtime-references
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://releases.llvm.org/11.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-references.html
    profile:extreme
    profile:sensitive
    severity:STYLE

google-upgrade-googletest-case
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/upgrade-googletest-case.html
    profile:extreme
    severity:STYLE

hicpp-avoid-c-arrays
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/avoid-c-arrays.html
    severity:LOW

hicpp-avoid-goto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/avoid-goto.html
    severity:STYLE

hicpp-braces-around-statements
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/braces-around-statements.html
    severity:STYLE

hicpp-deprecated-headers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/deprecated-headers.html
    severity:LOW

hicpp-exception-baseclass
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/exception-baseclass.html
    severity:LOW

hicpp-explicit-conversions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/explicit-conversions.html
    severity:LOW

hicpp-function-size
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/function-size.html
    severity:LOW

hicpp-invalid-access-moved
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/invalid-access-moved.html
    severity:HIGH

hicpp-member-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/member-init.html
    severity:LOW

hicpp-move-const-arg
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/move-const-arg.html
    severity:MEDIUM

hicpp-multiway-paths-covered
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/multiway-paths-covered.html
    severity:STYLE

hicpp-named-parameter
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/named-parameter.html
    severity:LOW

hicpp-new-delete-operators
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/new-delete-operators.html
    severity:LOW

hicpp-no-array-decay
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/no-array-decay.html
    severity:LOW

hicpp-no-assembler
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/no-assembler.html
    severity:LOW

hicpp-no-malloc
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/no-malloc.html
    severity:LOW

hicpp-noexcept-move
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/noexcept-move.html
    severity:MEDIUM

hicpp-signed-bitwise
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/signed-bitwise.html
    severity:LOW

hicpp-special-member-functions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/special-member-functions.html
    severity:LOW

hicpp-static-assert
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/static-assert.html
    severity:LOW

hicpp-undelegated-constructor
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/undelegated-constructor.html
    severity:MEDIUM

hicpp-uppercase-literal-suffix
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/uppercase-literal-suffix.html
    severity:STYLE

hicpp-use-auto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-auto.html
    severity:STYLE

hicpp-use-emplace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-emplace.html
    severity:STYLE

hicpp-use-equals-default
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-equals-default.html
    severity:LOW

hicpp-use-equals-delete
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-equals-delete.html
    severity:LOW

hicpp-use-noexcept
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-noexcept.html
    severity:STYLE

hicpp-use-nullptr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-nullptr.html
    severity:LOW

hicpp-use-override
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/use-override.html
    severity:LOW

hicpp-vararg
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/hicpp/vararg.html
    severity:LOW

linuxkernel-must-check-errs
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    severity:STYLE

llvm-else-after-return
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/else-after-return.html
    severity:STYLE

llvm-header-guard
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/header-guard.html
    severity:LOW

llvm-include-order
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/include-order.html
    severity:LOW

llvm-namespace-comment
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/namespace-comment.html
    severity:LOW

llvm-prefer-isa-or-dyn-cast-in-conditionals
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/prefer-isa-or-dyn-cast-in-conditionals.html
    severity:STYLE

llvm-prefer-register-over-unsigned
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/prefer-register-over-unsigned.html
    severity:STYLE

llvm-qualified-auto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/qualified-auto.html
    severity:STYLE

llvm-twine-local
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvm/twine-local.html
    severity:LOW

llvmlibc-callee-namespace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvmlibc/callee-namespace.html
    severity:STYLE

llvmlibc-implementation-in-namespace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvmlibc/implementation-in-namespace.html
    severity:LOW

llvmlibc-restrict-system-libc-headers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/llvmlibc/restrict-system-libc-headers.html
    severity:LOW

misc-new-delete-overloads
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/new-delete-overloads.html
    profile:extreme
    severity:MEDIUM

misc-no-recursion
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/no-recursion.html
    profile:extreme
    severity:LOW

misc-non-copyable-objects
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/non-copyable-objects.html
    guideline:sei-cert
    profile:extreme
    sei-cert:fio38-c
    severity:HIGH

misc-non-private-member-variables-in-classes
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/non-private-member-variables-in-classes.html
    profile:extreme
    severity:LOW

misc-static-assert
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/static-assert.html
    profile:extreme
    severity:LOW

misc-throw-by-value-catch-by-reference
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/throw-by-value-catch-by-reference.html
    guideline:sei-cert
    profile:extreme
    sei-cert:err61-cpp
    severity:HIGH

misc-unused-alias-decls
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/unused-alias-decls.html
    profile:extreme
    profile:sensitive
    severity:LOW

misc-unused-parameters
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/unused-parameters.html
    profile:extreme
    severity:LOW

misc-unused-using-decls
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/unused-using-decls.html
    profile:extreme
    profile:sensitive
    severity:LOW

modernize-avoid-bind
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/avoid-bind.html
    profile:extreme
    severity:STYLE

modernize-avoid-c-arrays
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/avoid-c-arrays.html
    profile:extreme
    severity:LOW

modernize-concat-nested-namespaces
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/concat-nested-namespaces.html
    profile:extreme
    severity:STYLE

modernize-deprecated-headers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/deprecated-headers.html
    profile:extreme
    profile:sensitive
    severity:LOW

modernize-deprecated-ios-base-aliases
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/deprecated-ios-base-aliases.html
    profile:extreme
    severity:LOW

modernize-loop-convert
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/loop-convert.html
    profile:extreme
    severity:STYLE

modernize-make-shared
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/make-shared.html
    profile:extreme
    severity:LOW

modernize-make-unique
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/make-unique.html
    profile:extreme
    severity:LOW

modernize-pass-by-value
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/pass-by-value.html
    profile:extreme
    severity:LOW

modernize-raw-string-literal
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/raw-string-literal.html
    profile:extreme
    severity:STYLE

modernize-redundant-void-arg
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/redundant-void-arg.html
    profile:extreme
    severity:STYLE

modernize-replace-auto-ptr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/replace-auto-ptr.html
    profile:extreme
    profile:sensitive
    severity:LOW

modernize-replace-disallow-copy-and-assign-macro
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/replace-disallow-copy-and-assign-macro.html
    profile:extreme
    severity:LOW

modernize-replace-random-shuffle
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/replace-random-shuffle.html
    profile:extreme
    profile:sensitive
    severity:LOW

modernize-return-braced-init-list
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/return-braced-init-list.html
    profile:extreme
    severity:STYLE

modernize-shrink-to-fit
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/shrink-to-fit.html
    profile:extreme
    severity:STYLE

modernize-unary-static-assert
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/unary-static-assert.html
    profile:extreme
    severity:STYLE

modernize-use-auto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-auto.html
    profile:extreme
    severity:STYLE

modernize-use-bool-literals
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-bool-literals.html
    profile:extreme
    severity:STYLE

modernize-use-default-member-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-default-member-init.html
    profile:extreme
    severity:STYLE

modernize-use-emplace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-emplace.html
    profile:extreme
    severity:STYLE

modernize-use-equals-default
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-equals-default.html
    profile:extreme
    severity:STYLE

modernize-use-equals-delete
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-equals-delete.html
    profile:extreme
    severity:STYLE

modernize-use-nodiscard
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-nodiscard.html
    profile:extreme
    severity:LOW

modernize-use-noexcept
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-noexcept.html
    profile:extreme
    severity:STYLE

modernize-use-nullptr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-nullptr.html
    profile:extreme
    severity:LOW

modernize-use-override
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-override.html
    profile:extreme
    severity:LOW

modernize-use-trailing-return-type
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-trailing-return-type.html
    profile:extreme
    severity:STYLE

modernize-use-transparent-functors
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-transparent-functors.html
    profile:extreme
    severity:LOW

modernize-use-uncaught-exceptions
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-uncaught-exceptions.html
    profile:extreme
    severity:STYLE

modernize-use-using
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-using.html
    profile:extreme
    severity:STYLE

mpi-buffer-deref
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/mpi/buffer-deref.html
    profile:extreme
    profile:sensitive
    severity:LOW

mpi-type-mismatch
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/mpi/type-mismatch.html
    profile:extreme
    profile:sensitive
    severity:LOW

objc-avoid-nserror-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/avoid-nserror-init.html

objc-dealloc-in-category
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/dealloc-in-category.html

objc-forbidden-subclassing
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/forbidden-subclassing.html

objc-missing-hash
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/missing-hash.html

objc-nsinvocation-argument-lifetime
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/nsinvocation-argument-lifetime.html

objc-property-declaration
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/property-declaration.html

objc-super-self
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/objc/super-self.html

openmp-exception-escape
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/openmp/exception-escape.html

openmp-use-default-none
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/openmp/use-default-none.html

performance-faster-string-find
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/faster-string-find.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-for-range-copy
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/for-range-copy.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-implicit-conversion-in-loop
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/implicit-conversion-in-loop.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-inefficient-string-concatenation
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/inefficient-string-concatenation.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-inefficient-vector-operation
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/inefficient-vector-operation.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-type-promotion-in-math-fn
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/type-promotion-in-math-fn.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-unnecessary-copy-initialization
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/unnecessary-copy-initialization.html
    profile:extreme
    profile:sensitive
    severity:LOW

performance-unnecessary-value-param
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/unnecessary-value-param.html
    profile:extreme
    profile:sensitive
    severity:LOW

portability-restrict-system-includes
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/portability/restrict-system-includes.html
    severity:STYLE

portability-simd-intrinsics
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/portability/simd-intrinsics.html
    severity:STYLE

readability-avoid-const-params-in-decls
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/avoid-const-params-in-decls.html
    severity:STYLE

readability-braces-around-statements
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/braces-around-statements.html
    severity:STYLE

readability-const-return-type
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/const-return-type.html
    severity:LOW

readability-container-size-empty
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/container-size-empty.html
    severity:STYLE

readability-convert-member-functions-to-static
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/convert-member-functions-to-static.html
    severity:STYLE

readability-delete-null-pointer
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/delete-null-pointer.html
    severity:STYLE

readability-deleted-default
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://releases.llvm.org/12.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-deleted-default.html
    severity:STYLE

readability-else-after-return
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/else-after-return.html
    severity:STYLE

readability-function-size
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/function-size.html
    severity:STYLE

readability-identifier-naming
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/identifier-naming.html
    severity:STYLE

readability-implicit-bool-conversion
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/implicit-bool-conversion.html
    severity:STYLE

readability-inconsistent-declaration-parameter-name
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/inconsistent-declaration-parameter-name.html
    severity:STYLE

readability-isolate-declaration
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/isolate-declaration.html
    severity:STYLE

readability-magic-numbers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/magic-numbers.html
    severity:STYLE

readability-make-member-function-const
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/make-member-function-const.html
    severity:STYLE

readability-misleading-indentation
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/misleading-indentation.html
    severity:LOW

readability-misplaced-array-index
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/misplaced-array-index.html
    severity:STYLE

readability-named-parameter
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/named-parameter.html
    severity:STYLE

readability-non-const-parameter
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/non-const-parameter.html
    severity:STYLE

readability-qualified-auto
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/qualified-auto.html
    severity:LOW

readability-redundant-access-specifiers
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-access-specifiers.html
    severity:STYLE

readability-redundant-control-flow
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-control-flow.html
    severity:STYLE

readability-redundant-declaration
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-declaration.html
    severity:STYLE

readability-redundant-function-ptr-dereference
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-function-ptr-dereference.html
    severity:STYLE

readability-redundant-member-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html
    severity:STYLE

readability-redundant-preprocessor
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-preprocessor.html
    severity:STYLE

readability-redundant-smartptr-get
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-smartptr-get.html
    severity:STYLE

readability-redundant-string-cstr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-string-cstr.html
    severity:STYLE

readability-redundant-string-init
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-string-init.html
    severity:STYLE

readability-simplify-boolean-expr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/simplify-boolean-expr.html
    severity:MEDIUM

readability-simplify-subscript-expr
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/simplify-subscript-expr.html
    severity:STYLE

readability-static-accessed-through-instance
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/static-accessed-through-instance.html
    severity:STYLE

readability-static-definition-in-anonymous-namespace
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/static-definition-in-anonymous-namespace.html
    severity:STYLE

readability-string-compare
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/string-compare.html
    severity:LOW

readability-uniqueptr-delete-release
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/uniqueptr-delete-release.html
    severity:STYLE

readability-uppercase-literal-suffix
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/uppercase-literal-suffix.html
    severity:STYLE

readability-use-anyofallof
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/use-anyofallof.html
    severity:STYLE

zircon-temporary-objects
  Status: disabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/zircon/temporary-objects.html
    severity:STYLE

bugprone-assert-side-effect
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/assert-side-effect.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:sensitive
    sei-cert:pre31-c
    severity:MEDIUM

bugprone-bool-pointer-implicit-conversion
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/bool-pointer-implicit-conversion.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-copy-constructor-init
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/copy-constructor-init.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-dangling-handle
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/dangling-handle.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-dynamic-static-initializers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/dynamic-static-initializers.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-fold-init-type
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/fold-init-type.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-forward-declaration-namespace
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/forward-declaration-namespace.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-forwarding-reference-overload
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/forwarding-reference-overload.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-inaccurate-erase
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/inaccurate-erase.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-incorrect-roundings
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/incorrect-roundings.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-infinite-loop
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/infinite-loop.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-integer-division
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/integer-division.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-lambda-function-name
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/lambda-function-name.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

bugprone-macro-repeated-side-effects
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-repeated-side-effects.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:pre31-c
    severity:MEDIUM

bugprone-misplaced-operator-in-strlen-in-alloc
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/misplaced-operator-in-strlen-in-alloc.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-misplaced-pointer-arithmetic-in-alloc
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/misplaced-pointer-arithmetic-in-alloc.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-misplaced-widening-cast
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/misplaced-widening-cast.html
    profile:default
    profile:extreme
    profile:portability
    profile:sensitive
    severity:HIGH

bugprone-move-forwarding-reference
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/move-forwarding-reference.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-not-null-terminated-result
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/not-null-terminated-result.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-signed-char-misuse
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/signed-char-misuse.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:sensitive
    sei-cert:str34-c
    severity:MEDIUM

bugprone-sizeof-container
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/sizeof-container.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-sizeof-expression
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/sizeof-expression.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:mem35-c
    severity:HIGH

bugprone-string-constructor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/string-constructor.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-string-literal-with-embedded-nul
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/string-literal-with-embedded-nul.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-suspicious-enum-usage
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-enum-usage.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-suspicious-memset-usage
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-memset-usage.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:int31-c
    severity:HIGH

bugprone-suspicious-missing-comma
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-missing-comma.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-suspicious-semicolon
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-semicolon.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-swapped-arguments
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/swapped-arguments.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-terminating-continue
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/terminating-continue.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-throw-keyword-missing
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/throw-keyword-missing.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-too-small-loop-variable
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/too-small-loop-variable.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-undefined-memory-manipulation
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/undefined-memory-manipulation.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop57-cpp
    severity:MEDIUM

bugprone-undelegated-constructor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/undelegated-constructor.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

bugprone-unused-raii
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unused-raii.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:HIGH

bugprone-unused-return-value
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unused-return-value.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:sensitive
    sei-cert:exp63-cpp
    severity:MEDIUM

bugprone-use-after-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/use-after-move.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:exp63-cpp
    severity:HIGH

bugprone-virtual-near-miss
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/virtual-near-miss.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

cert-dcl54-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl54-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl54-cpp
    severity:MEDIUM

cert-dcl58-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl58-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl58-cpp
    severity:HIGH

cert-dcl59-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl59-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:dcl59-cpp
    severity:MEDIUM

cert-err09-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err09-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:err09-cpp
    sei-cert:err61-cpp
    severity:HIGH

cert-fio38-c
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/fio38-c.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:fio38-c
    severity:HIGH

cert-mem57-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/mem57-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:mem57-cpp
    severity:MEDIUM

cert-oop11-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop11-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop11-cpp
    severity:MEDIUM

cert-oop58-cpp
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop58-cpp.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:oop58-cpp
    severity:MEDIUM

cert-pos44-c
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/pos44-c.html
    guideline:sei-cert
    profile:default
    profile:extreme
    profile:security
    profile:sensitive
    sei-cert:pos44-c
    severity:MEDIUM

clang-diagnostic-array-bounds-pointer-arithmetic
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#warray-bounds-pointer-arithmetic
    guideline:sei-cert
    profile:default
    sei-cert:arr39-c
    severity:MEDIUM

clang-diagnostic-bitwise-conditional-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wbitwise-conditional-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-bitwise-instead-of-logical
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wbitwise-instead-of-logical
    profile:default
    severity:MEDIUM

clang-diagnostic-bitwise-op-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wbitwise-op-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-bool-operation
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wbool-operation
    profile:default
    severity:MEDIUM

clang-diagnostic-cast-of-sel-type
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wcast-of-sel-type
    profile:default
    severity:MEDIUM

clang-diagnostic-char-subscripts
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wchar-subscripts
    profile:default
    severity:MEDIUM

clang-diagnostic-comment
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wcomment
    profile:default
    severity:MEDIUM

clang-diagnostic-dangling-else
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdangling-else
    profile:default
    severity:MEDIUM

clang-diagnostic-delete-abstract-non-virtual-dtor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-abstract-non-virtual-dtor
    profile:default
    severity:MEDIUM

clang-diagnostic-delete-non-abstract-non-virtual-dtor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-abstract-non-virtual-dtor
    profile:default
    severity:MEDIUM

clang-diagnostic-delete-non-virtual-dtor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-virtual-dtor
    profile:default
    severity:MEDIUM

clang-diagnostic-deprecated-copy
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdeprecated-copy
    profile:default
    severity:MEDIUM

clang-diagnostic-deprecated-copy-with-user-provided-copy
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdeprecated-copy-with-user-provided-copy
    profile:default
    severity:MEDIUM

clang-diagnostic-division-by-zero
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdivision-by-zero
    profile:default
    severity:MEDIUM

clang-diagnostic-double-promotion
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdouble-promotion
    guideline:sei-cert
    profile:default
    sei-cert:flp34-c
    severity:MEDIUM

clang-diagnostic-embedded-directive
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wembedded-directive
    guideline:sei-cert
    profile:default
    sei-cert:pre32-c
    severity:MEDIUM

clang-diagnostic-empty-init-stmt
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wempty-init-stmt
    profile:default
    severity:MEDIUM

clang-diagnostic-extern-c-compat
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wextern-c-compat
    profile:default
    severity:MEDIUM

clang-diagnostic-float-conversion
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wfloat-conversion
    guideline:sei-cert
    profile:default
    sei-cert:flp32-c
    sei-cert:flp34-c
    severity:MEDIUM

clang-diagnostic-for-loop-analysis
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wfor-loop-analysis
    profile:default
    severity:MEDIUM

clang-diagnostic-format
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat
    profile:default
    severity:MEDIUM

clang-diagnostic-format-extra-args
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-extra-args
    profile:default
    severity:MEDIUM

clang-diagnostic-format-insufficient-args
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-insufficient-args
    profile:default
    severity:MEDIUM

clang-diagnostic-format-invalid-specifier
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-invalid-specifier
    profile:default
    severity:MEDIUM

clang-diagnostic-format-nonliteral
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-nonliteral
    profile:default
    severity:MEDIUM

clang-diagnostic-format-security
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-security
    profile:default
    severity:MEDIUM

clang-diagnostic-format-y2k
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-y2k
    profile:default
    severity:MEDIUM

clang-diagnostic-format-zero-length
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-zero-length
    profile:default
    severity:MEDIUM

clang-diagnostic-frame-address
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wframe-address
    profile:default
    severity:MEDIUM

clang-diagnostic-fuse-ld-path
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wfuse-ld-path
    profile:default
    severity:MEDIUM

clang-diagnostic-ignored-qualifiers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wignored-qualifiers
    profile:default
    severity:MEDIUM

clang-diagnostic-ignored-reference-qualifiers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wignored-reference-qualifiers
    profile:default
    severity:MEDIUM

clang-diagnostic-implicit
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit
    profile:default
    severity:MEDIUM

clang-diagnostic-implicit-function-declaration
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-function-declaration
    profile:default
    severity:HIGH

clang-diagnostic-implicit-int
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-int
    profile:default
    severity:MEDIUM

clang-diagnostic-infinite-recursion
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winfinite-recursion
    profile:default
    severity:MEDIUM

clang-diagnostic-initializer-overrides
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winitializer-overrides
    profile:default
    severity:MEDIUM

clang-diagnostic-int-in-bool-context
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wint-in-bool-context
    profile:default
    severity:MEDIUM

clang-diagnostic-logical-not-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wlogical-not-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-logical-op-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wlogical-op-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-misleading-indentation
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmisleading-indentation
    profile:default
    severity:MEDIUM

clang-diagnostic-mismatched-tags
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmismatched-tags
    profile:default
    severity:MEDIUM

clang-diagnostic-missing-braces
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmissing-braces
    profile:default
    severity:MEDIUM

clang-diagnostic-missing-field-initializers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmissing-field-initializers
    profile:default
    severity:MEDIUM

clang-diagnostic-missing-method-return-type
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmissing-method-return-type
    profile:default
    severity:MEDIUM

clang-diagnostic-most
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmost
    profile:default
    severity:MEDIUM

clang-diagnostic-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmove
    profile:default
    severity:MEDIUM

clang-diagnostic-multichar
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmultichar
    profile:default
    severity:MEDIUM

clang-diagnostic-non-virtual-dtor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnon-virtual-dtor
    guideline:sei-cert
    profile:default
    sei-cert:oop52-cpp
    severity:MEDIUM

clang-diagnostic-nonnull
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnonnull
    profile:default
    severity:MEDIUM

clang-diagnostic-null-pointer-arithmetic
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnull-pointer-arithmetic
    profile:default
    severity:MEDIUM

clang-diagnostic-null-pointer-subtraction
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnull-pointer-subtraction
    profile:default
    severity:MEDIUM

clang-diagnostic-objc-designated-initializers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wobjc-designated-initializers
    profile:default
    severity:MEDIUM

clang-diagnostic-objc-flexible-array
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wobjc-flexible-array
    profile:default
    severity:MEDIUM

clang-diagnostic-objc-missing-super-calls
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wobjc-missing-super-calls
    profile:default
    severity:MEDIUM

clang-diagnostic-overloaded-shift-op-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#woverloaded-shift-op-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-overloaded-virtual
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#woverloaded-virtual
    profile:default
    severity:MEDIUM

clang-diagnostic-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wparentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-parentheses-equality
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wparentheses-equality
    profile:default
    severity:MEDIUM

clang-diagnostic-pessimizing-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wpessimizing-move
    profile:default
    severity:MEDIUM

clang-diagnostic-potentially-evaluated-expression
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wpotentially-evaluated-expression
    profile:default
    severity:MEDIUM

clang-diagnostic-private-extern
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wprivate-extern
    profile:default
    severity:MEDIUM

clang-diagnostic-range-loop-construct
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wrange-loop-construct
    profile:default
    severity:MEDIUM

clang-diagnostic-redundant-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wredundant-move
    profile:default
    severity:MEDIUM

clang-diagnostic-reorder
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreorder
    profile:default
    severity:MEDIUM

clang-diagnostic-reorder-ctor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreorder-ctor
    profile:default
    severity:MEDIUM

clang-diagnostic-reorder-init-list
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreorder-init-list
    profile:default
    severity:MEDIUM

clang-diagnostic-return-std-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-std-move
    profile:default
    severity:MEDIUM

clang-diagnostic-return-type
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-type
    profile:default
    severity:HIGH

clang-diagnostic-return-type-c-linkage
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-type-c-linkage
    profile:default
    severity:MEDIUM

clang-diagnostic-self-assign
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-assign
    profile:default
    severity:MEDIUM

clang-diagnostic-self-assign-field
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-assign-field
    profile:default
    severity:MEDIUM

clang-diagnostic-self-assign-overloaded
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-assign-overloaded
    profile:default
    severity:MEDIUM

clang-diagnostic-self-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-move
    profile:default
    severity:MEDIUM

clang-diagnostic-semicolon-before-method-body
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsemicolon-before-method-body
    profile:default
    severity:MEDIUM

clang-diagnostic-shift-op-parentheses
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wshift-op-parentheses
    profile:default
    severity:MEDIUM

clang-diagnostic-sign-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsign-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-sizeof-array-argument
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsizeof-array-argument
    profile:default
    severity:MEDIUM

clang-diagnostic-sizeof-array-decay
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsizeof-array-decay
    profile:default
    severity:MEDIUM

clang-diagnostic-sometimes-uninitialized
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsometimes-uninitialized
    profile:default
    severity:MEDIUM

clang-diagnostic-static-in-inline
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstatic-in-inline
    guideline:sei-cert
    profile:default
    sei-cert:msc40-c
    severity:MEDIUM

clang-diagnostic-static-self-init
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstatic-self-init
    profile:default
    severity:MEDIUM

clang-diagnostic-string-concatenation
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstring-concatenation
    profile:default
    severity:MEDIUM

clang-diagnostic-string-plus-int
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstring-plus-int
    profile:default
    severity:MEDIUM

clang-diagnostic-switch
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wswitch
    profile:default
    severity:MEDIUM

clang-diagnostic-switch-bool
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wswitch-bool
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-bitwise-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-bitwise-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-constant-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-constant-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-constant-out-of-range-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-constant-out-of-range-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-objc-bool-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-objc-bool-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-overlap-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-overlap-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-pointer-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-pointer-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-tautological-undefined-compare
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-undefined-compare
    profile:default
    severity:MEDIUM

clang-diagnostic-trigraphs
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wtrigraphs
    profile:default
    severity:MEDIUM

clang-diagnostic-unevaluated-expression
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunevaluated-expression
    profile:default
    severity:MEDIUM

clang-diagnostic-uninitialized
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized
    profile:default
    severity:MEDIUM

clang-diagnostic-uninitialized-const-reference
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized-const-reference
    profile:default
    severity:MEDIUM

clang-diagnostic-unknown-pragmas
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunknown-pragmas
    profile:default
    severity:MEDIUM

clang-diagnostic-unneeded-internal-declaration
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunneeded-internal-declaration
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-argument
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-argument
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-but-set-parameter
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-but-set-parameter
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-but-set-variable
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-but-set-variable
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-comparison
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-comparison
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-const-variable
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-const-variable
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-function
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-function
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-label
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-label
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-lambda-capture
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-lambda-capture
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-local-typedef
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-local-typedef
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-parameter
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-parameter
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-private-field
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-private-field
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-property-ivar
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-property-ivar
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-result
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-result
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-value
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-value
    profile:default
    severity:MEDIUM

clang-diagnostic-unused-variable
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunused-variable
    profile:default
    severity:MEDIUM

clang-diagnostic-user-defined-warnings
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuser-defined-warnings
    profile:default
    severity:MEDIUM

clang-diagnostic-volatile-register-var
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wvolatile-register-var
    profile:default
    severity:MEDIUM

google-build-namespaces
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/build-namespaces.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

misc-definitions-in-headers
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/definitions-in-headers.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

misc-misplaced-const
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/misplaced-const.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

misc-redundant-expression
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/redundant-expression.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

misc-unconventional-assign-operator
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/unconventional-assign-operator.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

misc-uniqueptr-reset-release
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/uniqueptr-reset-release.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

performance-inefficient-algorithm
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/inefficient-algorithm.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

performance-move-const-arg
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/move-const-arg.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

performance-move-constructor-init
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/move-constructor-init.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

performance-no-automatic-move
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/no-automatic-move.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

performance-noexcept-move-constructor
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/noexcept-move-constructor.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:MEDIUM

performance-trivially-destructible
  Status: enabled
  Analyzer: clang-tidy
  Description:
  Labels:
    doc_url:https://clang.llvm.org/extra/clang-tidy/checks/performance/trivially-destructible.html
    profile:default
    profile:extreme
    profile:sensitive
    severity:LOW

cppcheck-purgedConfiguration
  Status: disabled
  Analyzer: cppcheck
  Description: The configuration '' was not checked because its code equals another one.
  Labels:
    severity:LOW

cppcheck-toomanyconfigs
  Status: disabled
  Analyzer: cppcheck
  Description: Too many #ifdef configurations - cppcheck only checks 12 configurations. Use --force to check all configurations. For more details, use --enable=information.
  Labels:
    severity:LOW

cppcheck-AssignmentAddressToInteger
  Status: disabled
  Analyzer: cppcheck
  Description: Assigning a pointer to an integer is not portable.
  Labels:
    severity:LOW

cppcheck-AssignmentIntegerToAddress
  Status: disabled
  Analyzer: cppcheck
  Description: Assigning an integer to a pointer is not portable.
  Labels:
    severity:LOW

cppcheck-CastIntegerToAddressAtReturn
  Status: disabled
  Analyzer: cppcheck
  Description: Returning an integer in a function with pointer return type is not portable.
  Labels:
    severity:LOW

cppcheck-CastAddressToIntegerAtReturn
  Status: disabled
  Analyzer: cppcheck
  Description: Returning an address value in a function with integer return type is not portable.
  Labels:
    severity:LOW

cppcheck-danglingTempReference
  Status: disabled
  Analyzer: cppcheck
  Description: Using reference to dangling temporary.
  Labels:
    severity:HIGH

cppcheck-uselessAssignmentArg
  Status: disabled
  Analyzer: cppcheck
  Description: Assignment of function parameter has no effect outside the function.
  Labels:
    severity:STYLE

cppcheck-assignBoolToFloat
  Status: disabled
  Analyzer: cppcheck
  Description: Boolean value assigned to floating point variable.
  Labels:
    severity:STYLE

cppcheck-comparisonOfFuncReturningBoolError
  Status: disabled
  Analyzer: cppcheck
  Description: Comparison of a function returning boolean value using relational (<, >, <= or >=) operator.
  Labels:
    severity:STYLE

cppcheck-comparisonOfTwoFuncsReturningBoolError
  Status: disabled
  Analyzer: cppcheck
  Description: Comparison of two functions returning boolean value using relational (<, >, <= or >=) operator.
  Labels:
    severity:STYLE

cppcheck-comparisonOfBoolWithBoolError
  Status: disabled
  Analyzer: cppcheck
  Description: Comparison of a variable having boolean value using relational (<, >, <= or >=) operator.
  Labels:
    severity:STYLE

cppcheck-incrementboolean
  Status: disabled
  Analyzer: cppcheck
  Description: Incrementing a variable of type 'bool' with postfix operator++ is deprecated by the C++ Standard. You should assign it the value 'true' instead.
  Labels:
    severity:STYLE

cppcheck-bitwiseOnBoolean
  Status: disabled
  Analyzer: cppcheck
  Description: Boolean expression 'expression' is used in bitwise operation. Did you mean '&&'?
  Labels:
    severity:STYLE

cppcheck-returnNonBoolInBooleanFunction
  Status: disabled
  Analyzer: cppcheck
  Description: Non-boolean value returned from function returning bool
  Labels:
    severity:STYLE

cppcheck-pointerOutOfBounds
  Status: disabled
  Analyzer: cppcheck
  Description: Pointer arithmetic overflow.
  Labels:
    severity:LOW

cppcheck-arrayIndexThenCheck
  Status: disabled
  Analyzer: cppcheck
  Description: Array index 'i' is used before limits check.
  Labels:
    severity:STYLE

cppcheck-unpreciseMathCall
  Status: disabled
  Analyzer: cppcheck
  Description: Expression '1 - erf(x)' can be replaced by 'erfc(x)' to avoid loss of precision.
  Labels:
    severity:STYLE

cppcheck-memsetFloat
  Status: disabled
  Analyzer: cppcheck
  Description: The 2nd memset() argument 'varname' is a float, its representation is implementation defined.
  Labels:
    severity:LOW

cppcheck-noConstructor
  Status: disabled
  Analyzer: cppcheck
  Description: The class 'classname' does not have a constructor although it has private member variables.
  Labels:
    severity:STYLE

cppcheck-noExplicitConstructor
  Status: disabled
  Analyzer: cppcheck
  Description: Class 'classname' has a constructor with 1 argument that is not explicit.
  Labels:
    severity:STYLE

cppcheck-unusedPrivateFunction
  Status: disabled
  Analyzer: cppcheck
  Description: Unused private function: 'classname::funcname'
  Labels:
    severity:STYLE

cppcheck-operatorEqRetRefThis
  Status: disabled
  Analyzer: cppcheck
  Description: 'operator=' should return reference to 'this' instance.
  Labels:
    severity:STYLE

cppcheck-operatorEqShouldBeLeftUnimplemented
  Status: disabled
  Analyzer: cppcheck
  Description: 'operator=' should either return reference to 'this' instance or be declared private and left unimplemented.
  Labels:
    severity:STYLE

cppcheck-functionConst
  Status: disabled
  Analyzer: cppcheck
  Description: Technically the member function 'class::function' can be const.
  Labels:
    severity:STYLE

cppcheck-functionStatic
  Status: disabled
  Analyzer: cppcheck
  Description: Technically the member function 'class::function' can be static (but you may consider moving to unnamed namespace).
  Labels:
    severity:LOW

cppcheck-initializerList
  Status: disabled
  Analyzer: cppcheck
  Description: Member variable 'class::variable' is in the wrong place in the initializer list.
  Labels:
    severity:STYLE

cppcheck-useInitializationList
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'variable' is assigned in constructor body. Consider performing initialization in initialization list.
  Labels:
    severity:LOW

cppcheck-missingOverride
  Status: disabled
  Analyzer: cppcheck
  Description: The function '' overrides a function in a base class but is not marked with a 'override' specifier.
  Labels:
    severity:STYLE

cppcheck-thisUseAfterFree
  Status: disabled
  Analyzer: cppcheck
  Description: Using member 'x' when 'this' might be invalid
  Labels:
    severity:MEDIUM

cppcheck-assignIfError
  Status: disabled
  Analyzer: cppcheck
  Description: Mismatching assignment and comparison, comparison '' is always false.
  Labels:
    severity:STYLE

cppcheck-comparisonError
  Status: disabled
  Analyzer: cppcheck
  Description: Expression '(X & 0x6) == 0x1' is always false.
  Labels:
    severity:STYLE

cppcheck-duplicateCondition
  Status: disabled
  Analyzer: cppcheck
  Description: The if condition is the same as the previous if condition
  Labels:
    severity:STYLE

cppcheck-multiCondition
  Status: disabled
  Analyzer: cppcheck
  Description: Expression is always false because 'else if' condition matches previous condition at line 1.
  Labels:
    severity:STYLE

cppcheck-mismatchingBitAnd
  Status: disabled
  Analyzer: cppcheck
  Description: Mismatching bitmasks. Result is always 0 (X = Y & 0xf0; Z = X & 0x1; => Z=0).
  Labels:
    severity:STYLE

cppcheck-redundantCondition
  Status: disabled
  Analyzer: cppcheck
  Description: Redundant condition: If x > 11 the condition x > 10 is always true.
  Labels:
    severity:STYLE

cppcheck-clarifyCondition
  Status: disabled
  Analyzer: cppcheck
  Description: Suspicious condition (assignment + comparison); Clarify expression with parentheses.
  Labels:
    severity:STYLE

cppcheck-knownConditionTrueFalse
  Status: disabled
  Analyzer: cppcheck
  Description: Condition 'x' is always false
  Labels:
    severity:STYLE

cppcheck-duplicateConditionalAssign
  Status: disabled
  Analyzer: cppcheck
  Description: Duplicate expression for the condition and assignment.
  Labels:
    severity:STYLE

cppcheck-exceptRethrowCopy
  Status: disabled
  Analyzer: cppcheck
  Description: Throwing a copy of the caught exception instead of rethrowing the original exception.
  Labels:
    severity:STYLE

cppcheck-catchExceptionByValue
  Status: disabled
  Analyzer: cppcheck
  Description: Exception should be caught by reference.
  Labels:
    severity:STYLE

cppcheck-unhandledExceptionSpecification
  Status: disabled
  Analyzer: cppcheck
  Description: Unhandled exception specification when calling function foo().
  Labels:
    severity:STYLE

cppcheck-fflushOnInputStream
  Status: disabled
  Analyzer: cppcheck
  Description: fflush() called on input stream 'stdin' may result in undefined behaviour on non-linux systems.
  Labels:
    severity:LOW

cppcheck-unsafeClassCanLeak
  Status: disabled
  Analyzer: cppcheck
  Description: Class 'class' is unsafe, 'class::varname' can leak by wrong usage.
  Labels:
    severity:STYLE

cppcheck-unusedScopedObject
  Status: disabled
  Analyzer: cppcheck
  Description: Instance of 'varname' object is destroyed immediately.
  Labels:
    severity:STYLE

cppcheck-invalidPointerCast
  Status: disabled
  Analyzer: cppcheck
  Description: Casting between float * and double * which have an incompatible binary data representation.
  Labels:
    severity:LOW

cppcheck-redundantCopyLocalConst
  Status: disabled
  Analyzer: cppcheck
  Description: Use const reference for 'varname' to avoid unnecessary data copying.
  Labels:
    severity:LOW

cppcheck-redundantCopy
  Status: disabled
  Analyzer: cppcheck
  Description: Buffer 'var' is being written before its old content has been used.
  Labels:
    severity:LOW

cppcheck-cstyleCast
  Status: disabled
  Analyzer: cppcheck
  Description: C-style pointer casting
  Labels:
    severity:STYLE

cppcheck-passedByValue
  Status: disabled
  Analyzer: cppcheck
  Description: Function parameter 'parametername' should be passed by const reference.
  Labels:
    severity:LOW

cppcheck-constVariable
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'x' can be declared with const
  Labels:
    severity:STYLE

cppcheck-unknownSignCharArrayIndex
  Status: disabled
  Analyzer: cppcheck
  Description: 'char' type used as array index.
  Labels:
    severity:LOW

cppcheck-variableScope
  Status: disabled
  Analyzer: cppcheck
  Description: The scope of the variable 'varname' can be reduced.
  Labels:
    severity:STYLE

cppcheck-clarifyCalculation
  Status: disabled
  Analyzer: cppcheck
  Description: Clarify calculation precedence for '+' and '?'.
  Labels:
    severity:STYLE

cppcheck-duplicateBranch
  Status: disabled
  Analyzer: cppcheck
  Description: Found duplicate branches for 'if' and 'else'.
  Labels:
    severity:STYLE

cppcheck-duplicateAssignExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Same expression used in consecutive assignments of 'x' and 'x'.
  Labels:
    severity:STYLE

cppcheck-oppositeExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Opposite expression on both sides of '&&'.
  Labels:
    severity:STYLE

cppcheck-duplicateExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Same expression on both sides of '&&'.
  Labels:
    severity:STYLE

cppcheck-duplicateValueTernary
  Status: disabled
  Analyzer: cppcheck
  Description: Same value in both branches of ternary operator.
  Labels:
    severity:STYLE

cppcheck-duplicateExpressionTernary
  Status: disabled
  Analyzer: cppcheck
  Description: Same expression in both branches of ternary operator.
  Labels:
    severity:STYLE

cppcheck-duplicateBreak
  Status: disabled
  Analyzer: cppcheck
  Description: Consecutive return, break, continue, goto or throw statements are unnecessary.
  Labels:
    severity:STYLE

cppcheck-unreachableCode
  Status: disabled
  Analyzer: cppcheck
  Description: Statements following return, break, continue, goto or throw will never be executed.
  Labels:
    severity:STYLE

cppcheck-unsignedLessThanZero
  Status: disabled
  Analyzer: cppcheck
  Description: Checking if unsigned expression 'varname' is less than zero.
  Labels:
    severity:STYLE

cppcheck-unsignedPositive
  Status: disabled
  Analyzer: cppcheck
  Description: Unsigned expression 'varname' can't be negative so it is unnecessary to test it.
  Labels:
    severity:STYLE

cppcheck-pointerLessThanZero
  Status: disabled
  Analyzer: cppcheck
  Description: A pointer can not be negative so it is either pointless or an error to check if it is.
  Labels:
    severity:STYLE

cppcheck-pointerPositive
  Status: disabled
  Analyzer: cppcheck
  Description: A pointer can not be negative so it is either pointless or an error to check if it is not.
  Labels:
    severity:STYLE

cppcheck-varFuncNullUB
  Status: disabled
  Analyzer: cppcheck
  Description: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour.
  Labels:
    severity:LOW

cppcheck-nanInArithmeticExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Using NaN/Inf in a computation.
  Labels:
    severity:STYLE

cppcheck-commaSeparatedReturn
  Status: disabled
  Analyzer: cppcheck
  Description: Comma is used in return statement. The comma can easily be misread as a ';'.
  Labels:
    severity:STYLE

cppcheck-redundantPointerOp
  Status: disabled
  Analyzer: cppcheck
  Description: Redundant pointer operation on 'varname' - it's already a pointer.
  Labels:
    severity:STYLE

cppcheck-unusedLabel
  Status: disabled
  Analyzer: cppcheck
  Description: Label '' is not used.
  Labels:
    severity:STYLE

cppcheck-unusedLabelConfiguration
  Status: disabled
  Analyzer: cppcheck
  Description: Label '' is not used. There is #if in function body so the label might be used in code that is removed by the preprocessor.
  Labels:
    severity:STYLE

cppcheck-funcArgNamesDifferent
  Status: disabled
  Analyzer: cppcheck
  Description: Function 'function' argument 2 names different: declaration 'A' definition 'B'.
  Labels:
    severity:STYLE

cppcheck-shadowVariable
  Status: disabled
  Analyzer: cppcheck
  Description: Local variable 'variable' shadows outer variable
  Labels:
    severity:STYLE

cppcheck-shadowFunction
  Status: disabled
  Analyzer: cppcheck
  Description: Local variable 'function' shadows outer function
  Labels:
    severity:STYLE

cppcheck-shadowArgument
  Status: disabled
  Analyzer: cppcheck
  Description: Local variable 'argument' shadows outer argument
  Labels:
    severity:STYLE

cppcheck-knownArgument
  Status: disabled
  Analyzer: cppcheck
  Description: Argument 'x-x' to function 'func' is always 0. It does not matter what value 'x' has.
  Labels:
    severity:STYLE

cppcheck-knownArgumentHiddenVariableExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Argument 'x*0' to function 'func' is always 0. Constant literal calculation disable/hide variable expression 'x'.
  Labels:
    severity:STYLE

cppcheck-redundantAssignment
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'var' is reassigned a value before the old one has been used.
  Labels:
    severity:STYLE

cppcheck-redundantInitialization
  Status: disabled
  Analyzer: cppcheck
  Description: Redundant initialization for 'var'. The initialized value is overwritten before it is read.
  Labels:
    severity:STYLE

cppcheck-moduloofone
  Status: disabled
  Analyzer: cppcheck
  Description: Modulo of one is always equal to zero
  Labels:
    severity:STYLE

cppcheck-mismatchingContainerIterator
  Status: disabled
  Analyzer: cppcheck
  Description: Iterator 'it' from different container 'v1' are used together.
  Labels:
    severity:HIGH

cppcheck-sameIteratorExpression
  Status: disabled
  Analyzer: cppcheck
  Description: Same iterators expression are used for algorithm.
  Labels:
    severity:STYLE

cppcheck-stlIfStrFind
  Status: disabled
  Analyzer: cppcheck
  Description: Inefficient usage of string::find() in condition; string::starts_with() could be faster.
  Labels:
    severity:LOW

cppcheck-stlFindInsert
  Status: disabled
  Analyzer: cppcheck
  Description: Searching before insertion is not necessary.
  Labels:
    severity:LOW

cppcheck-stlSize
  Status: disabled
  Analyzer: cppcheck
  Description: Possible inefficient checking for 'list' emptiness.
  Labels:
    severity:LOW

cppcheck-redundantIfRemove
  Status: disabled
  Analyzer: cppcheck
  Description: Redundant checking of STL container element existence before removing it.
  Labels:
    severity:STYLE

cppcheck-uselessCallsSwap
  Status: disabled
  Analyzer: cppcheck
  Description: It is inefficient to swap a object with itself by calling 'str.swap(str)'
  Labels:
    severity:LOW

cppcheck-uselessCallsSubstr
  Status: disabled
  Analyzer: cppcheck
  Description: Ineffective call of function 'substr' because it returns a copy of the object. Use operator= instead.
  Labels:
    severity:LOW

cppcheck-reademptycontainer
  Status: disabled
  Analyzer: cppcheck
  Description: Reading from empty STL container 'var'
  Labels:
    severity:STYLE

cppcheck-useStlAlgorithm
  Status: disabled
  Analyzer: cppcheck
  Description: Consider using  algorithm instead of a raw loop.
  Labels:
    severity:STYLE

cppcheck-knownEmptyContainer
  Status: disabled
  Analyzer: cppcheck
  Description: Iterating over container 'var' that is always empty.
  Labels:
    severity:STYLE

cppcheck-globalLockGuard
  Status: disabled
  Analyzer: cppcheck
  Description: Lock guard is defined globally. Lock guards are intended to be local. A global lock guard could lead to a deadlock since it won't unlock until the end of the program.
  Labels:
    severity:MEDIUM

cppcheck-localMutex
  Status: disabled
  Analyzer: cppcheck
  Description: The lock is ineffective because the mutex is locked at the same scope as the mutex itself.
  Labels:
    severity:MEDIUM

cppcheck-sizeofVoid
  Status: disabled
  Analyzer: cppcheck
  Description: Behaviour of 'sizeof(void)' is not covered by the ISO C standard.
  Labels:
    severity:LOW

cppcheck-sizeofDereferencedVoidPointer
  Status: disabled
  Analyzer: cppcheck
  Description: '*varname' is of type 'void', the behaviour of 'sizeof(void)' is not covered by the ISO C standard.
  Labels:
    severity:LOW

cppcheck-arithOperationsOnVoidPointer
  Status: disabled
  Analyzer: cppcheck
  Description: 'varname' is of type 'vartype'. When using void pointers in calculations, the behaviour is undefined.
  Labels:
    severity:LOW

cppcheck-truncLongCastAssignment
  Status: disabled
  Analyzer: cppcheck
  Description: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information.
  Labels:
    severity:STYLE

cppcheck-truncLongCastReturn
  Status: disabled
  Analyzer: cppcheck
  Description: int result is returned as long value. If the return value is long to avoid loss of information, then you have loss of information.
  Labels:
    severity:STYLE

cppcheck-unusedFunction
  Status: disabled
  Analyzer: cppcheck
  Description: The function 'funcName' is never used.
  Labels:
    severity:STYLE

cppcheck-unusedVariable
  Status: disabled
  Analyzer: cppcheck
  Description: Unused variable: varname
  Labels:
    severity:STYLE

cppcheck-unusedAllocatedMemory
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'varname' is allocated memory that is never used.
  Labels:
    severity:STYLE

cppcheck-unreadVariable
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'varname' is assigned a value that is never used.
  Labels:
    severity:STYLE

cppcheck-unassignedVariable
  Status: disabled
  Analyzer: cppcheck
  Description: Variable 'varname' is not assigned a value.
  Labels:
    severity:STYLE

cppcheck-unusedStructMember
  Status: disabled
  Analyzer: cppcheck
  Description: struct member 'structname::variable' is never used.
  Labels:
    severity:STYLE

cppcheck-postfixOperator
  Status: disabled
  Analyzer: cppcheck
  Description: Prefer prefix ++/-- operators for non-primitive types.
  Labels:
    severity:LOW

cppcheck-missingInclude
  Status: disabled
  Analyzer: cppcheck
  Description: Include file: "" not found.
  Labels:
    severity:LOW

cppcheck-missingIncludeSystem
  Status: disabled
  Analyzer: cppcheck
  Description: Include file: <> not found. Please note: Cppcheck does not need standard library headers to get proper results.
  Labels:
    severity:LOW

cppcheck-ConfigurationNotChecked
  Status: disabled
  Analyzer: cppcheck
  Description: Skipping configuration 'X' since the value of 'X' is unknown. Use -D if you want to check it. You can use -U to skip it explicitly.
  Labels:
    severity:LOW

cppcheck-preprocessorErrorDirective
  Status: disabled
  Analyzer: cppcheck
  Description: #error message
  Labels:
    severity:HIGH

cppcheck-constParameter
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:LOW

cppcheck-compareValueOutOfTypeRangeError
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:LOW

cppcheck-returnStdMoveLocal
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:LOW

cppcheck-constParameterCallback
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:LOW

cppcheck-useStandardLibrary
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:STYLE

cppcheck-assignmentInCondition
  Status: disabled
  Analyzer: cppcheck
  Description:
  Labels:
    severity:LOW

cppcheck-IOWithoutPositioning
  Status: enabled
  Analyzer: cppcheck
  Description: Read and write operations without a call to a positioning function (fseek, fsetpos or rewind) or fflush in between result in undefined behaviour.
  Labels:
    profile:default
    severity:HIGH

cppcheck-StlMissingComparison
  Status: enabled
  Analyzer: cppcheck
  Description: Missing bounds check for extra iterator increment in loop.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-accessForwarded
  Status: enabled
  Analyzer: cppcheck
  Description: Access of forwarded variable 'v'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-accessMoved
  Status: enabled
  Analyzer: cppcheck
  Description: Access of moved variable 'v'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-argumentSize
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-arrayIndexOutOfBounds
  Status: enabled
  Analyzer: cppcheck
  Description: Array 'arr[16]' accessed at index 16, which is out of bounds.
  Labels:
    profile:default
    severity:HIGH

cppcheck-arrayIndexOutOfBoundsCond
  Status: enabled
  Analyzer: cppcheck
  Description: Array 'arr[16]' accessed at index 16, which is out of bounds.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-assertWithSideEffect
  Status: enabled
  Analyzer: cppcheck
  Description: Assert statement calls a function which may have desired side effects: 'function'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-assignBoolToPointer
  Status: enabled
  Analyzer: cppcheck
  Description: Boolean value assigned to pointer.
  Labels:
    profile:default
    severity:HIGH

cppcheck-assignmentInAssert
  Status: enabled
  Analyzer: cppcheck
  Description: Assert statement modifies 'var'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-autoVariables
  Status: enabled
  Analyzer: cppcheck
  Description: Address of local auto-variable assigned to a function parameter.
  Labels:
    profile:default
    severity:HIGH

cppcheck-autovarInvalidDeallocation
  Status: enabled
  Analyzer: cppcheck
  Description: Deallocation of an auto-variable results in undefined behaviour.
  Labels:
    profile:default
    severity:HIGH

cppcheck-badBitmaskCheck
  Status: enabled
  Analyzer: cppcheck
  Description: Result of operator '|' is always true if one operand is non-zero. Did you intend to use '&'?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-boostForeachError
  Status: enabled
  Analyzer: cppcheck
  Description: BOOST_FOREACH caches the end() iterator. It's undefined behavior if you modify the container inside.
  Labels:
    profile:default
    severity:HIGH

cppcheck-bufferAccessOutOfBounds
  Status: enabled
  Analyzer: cppcheck
  Description: Buffer is accessed out of bounds: buf
  Labels:
    profile:default
    severity:HIGH

cppcheck-charBitOp
  Status: enabled
  Analyzer: cppcheck
  Description: When using 'char' variables in bit operations, sign extension can generate unexpected results.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-charLiteralWithCharPtrCompare
  Status: enabled
  Analyzer: cppcheck
  Description: Char literal compared with pointer 'foo'. Did you intend to dereference it?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-checkCastIntToCharAndBack
  Status: enabled
  Analyzer: cppcheck
  Description: Storing func_name() return value in char variable and then comparing with EOF.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-clarifyStatement
  Status: enabled
  Analyzer: cppcheck
  Description: In expression like '*A++' the result of '*' is unused. Did you intend to write '(*A)++;'?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-compareBoolExpressionWithInt
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison of a boolean expression with an integer other than 0 or 1.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-comparePointers
  Status: enabled
  Analyzer: cppcheck
  Description: Comparing pointers that point to different objects
  Labels:
    profile:default
    severity:HIGH

cppcheck-comparisonFunctionIsAlwaysTrueOrFalse
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison of two identical variables with isless(varName,varName) always evaluates to false.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-comparisonOfBoolWithInvalidComparator
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison of a boolean value using relational operator (<, >, <= or >=).
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-constStatement
  Status: enabled
  Analyzer: cppcheck
  Description: Redundant code: Found a statement that begins with type constant.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-containerOutOfBounds
  Status: enabled
  Analyzer: cppcheck
  Description: Out of bounds access in expression 'container[x]'
  Labels:
    profile:default
    severity:HIGH

cppcheck-copyCtorAndEqOperator
  Status: enabled
  Analyzer: cppcheck
  Description: The class 'class' has 'operator=' but lack of 'copy constructor'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-copyCtorPointerCopying
  Status: enabled
  Analyzer: cppcheck
  Description: Value of pointer 'var', which points to allocated memory, is copied in copy constructor instead of allocating new memory.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-coutCerrMisusage
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid usage of output stream: '<< std::cout'.
  Labels:
    profile:default
    severity:HIGH

cppcheck-danglingLifetime
  Status: enabled
  Analyzer: cppcheck
  Description: Non-local variable 'x' will use object.
  Labels:
    profile:default
    severity:HIGH

cppcheck-danglingReference
  Status: enabled
  Analyzer: cppcheck
  Description: Non-local reference variable 'x' to local variable 'y'
  Labels:
    profile:default
    severity:HIGH

cppcheck-danglingTemporaryLifetime
  Status: enabled
  Analyzer: cppcheck
  Description: Using object to temporary.
  Labels:
    profile:default
    severity:HIGH

cppcheck-deallocDealloc
  Status: enabled
  Analyzer: cppcheck
  Description: Deallocating a deallocated pointer: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-deallocret
  Status: enabled
  Analyzer: cppcheck
  Description: Returning/dereferencing 'p' after it is deallocated / released
  Labels:
    profile:default
    severity:HIGH

cppcheck-deallocuse
  Status: enabled
  Analyzer: cppcheck
  Description: Dereferencing 'varname' after it is deallocated / released
  Labels:
    profile:default
    severity:HIGH

cppcheck-derefInvalidIterator
  Status: enabled
  Analyzer: cppcheck
  Description: Possible dereference of an invalid iterator: i
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-divideSizeof
  Status: enabled
  Analyzer: cppcheck
  Description: Division of result of sizeof() on pointer type.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-doubleFree
  Status: enabled
  Analyzer: cppcheck
  Description: Memory pointed to by 'varname' is freed twice.
  Labels:
    profile:default
    severity:HIGH

cppcheck-duplInheritedMember
  Status: enabled
  Analyzer: cppcheck
  Description: The class 'class' defines member variable with name 'variable' also defined in its parent class 'class'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-eraseDereference
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid iterator 'iter' used.
  Labels:
    profile:default
    severity:HIGH

cppcheck-exceptDeallocThrow
  Status: enabled
  Analyzer: cppcheck
  Description: Exception thrown in invalid state, 'p' points at deallocated memory.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-exceptThrowInDestructor
  Status: enabled
  Analyzer: cppcheck
  Description: Class Class is not safe, destructor throws exception
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-floatConversionOverflow
  Status: enabled
  Analyzer: cppcheck
  Description: Undefined behaviour: float (1e+100) to integer conversion overflow.
  Labels:
    profile:default
    severity:HIGH

cppcheck-funcArgOrderDifferent
  Status: enabled
  Analyzer: cppcheck
  Description: Function 'function' argument order different: declaration '' definition ''
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-identicalConditionAfterEarlyExit
  Status: enabled
  Analyzer: cppcheck
  Description: Identical condition 'x', second condition is always false
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-identicalInnerCondition
  Status: enabled
  Analyzer: cppcheck
  Description: Identical inner 'if' condition is always true.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-ignoredReturnValue
  Status: enabled
  Analyzer: cppcheck
  Description: Return value of function malloc() is not used.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incompatibleFileOpen
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incompleteArrayFill
  Status: enabled
  Analyzer: cppcheck
  Description: Array 'buffer' is filled incompletely. Did you forget to multiply the size given to 'memset()' with 'sizeof(*buffer)'?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incorrectCharBooleanError
  Status: enabled
  Analyzer: cppcheck
  Description: Conversion of char literal 'x' to bool always evaluates to true.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incorrectLogicOperator
  Status: enabled
  Analyzer: cppcheck
  Description: Logical disjunction always evaluates to true: foo > 3 && foo < 4.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incorrectStringBooleanError
  Status: enabled
  Analyzer: cppcheck
  Description: Conversion of string literal "Hello World" to bool always evaluates to true.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-incorrectStringCompare
  Status: enabled
  Analyzer: cppcheck
  Description: String literal "Hello World" doesn't match length argument for substr().
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-integerOverflow
  Status: enabled
  Analyzer: cppcheck
  Description: Signed integer overflow for expression ''.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidContainerLoop
  Status: disabled
  Analyzer: cppcheck
  Description: Calling 'erase' while iterating the container is invalid.
  Labels:
    severity:HIGH

cppcheck-invalidContainer
  Status: enabled
  Analyzer: cppcheck
  Description: Using object that may be invalid.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidFree
  Status: enabled
  Analyzer: cppcheck
  Description: Mismatching address is freed. The address you get from malloc() must be freed without offset.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidFunctionArg
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid func_name() argument nr 1. The value is 0 or 1 (boolean) but the valid values are '1:4'.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidFunctionArgBool
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid func_name() argument nr 1. A non-boolean value is required.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidFunctionArgStr
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid func_name() argument nr 1. A nul-terminated string is required.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidIterator1
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid iterator: iterator
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidLengthModifierError
  Status: enabled
  Analyzer: cppcheck
  Description: 'I' in format string (no. 1) is a length modifier and cannot be used without a conversion specifier.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidLifetime
  Status: enabled
  Analyzer: cppcheck
  Description: Using object that is out of scope.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidPrintfArgType_float
  Status: enabled
  Analyzer: cppcheck
  Description: %f in format string (no. 1) requires 'double' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidPrintfArgType_n
  Status: enabled
  Analyzer: cppcheck
  Description: %n in format string (no. 1) requires 'int *' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidPrintfArgType_p
  Status: enabled
  Analyzer: cppcheck
  Description: %p in format string (no. 1) requires an address but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidPrintfArgType_s
  Status: enabled
  Analyzer: cppcheck
  Description: %s in format string (no. 1) requires 'char *' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidPrintfArgType_sint
  Status: enabled
  Analyzer: cppcheck
  Description: %i in format string (no. 1) requires 'int' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidPrintfArgType_uint
  Status: enabled
  Analyzer: cppcheck
  Description: %u in format string (no. 1) requires 'unsigned int' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidScanfArgType_float
  Status: enabled
  Analyzer: cppcheck
  Description: %f in format string (no. 1) requires 'float *' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidScanfArgType_int
  Status: enabled
  Analyzer: cppcheck
  Description: %d in format string (no. 1) requires 'int *' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidScanfArgType_s
  Status: enabled
  Analyzer: cppcheck
  Description: %s in format string (no. 1) requires a 'char *' but the argument type is Unknown.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidScanfFormatWidth
  Status: enabled
  Analyzer: cppcheck
  Description: Width 5 given in format string (no. 10) is larger than destination buffer '[0]', use %-1s to prevent overflowing it.
  Labels:
    profile:default
    severity:HIGH

cppcheck-invalidScanfFormatWidth_smaller
  Status: enabled
  Analyzer: cppcheck
  Description: Width -1 given in format string (no. 99) is smaller than destination buffer '[0]'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidTestForOverflow
  Status: enabled
  Analyzer: cppcheck
  Description: Invalid test for overflow 'x + u < x'. Condition is always false unless there is overflow, and overflow is undefined behaviour.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-invalidscanf
  Status: enabled
  Analyzer: cppcheck
  Description: scanf() without field width limits can crash with huge input data.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-iterators1
  Status: enabled
  Analyzer: cppcheck
  Description: Same iterator is used with different containers 'container1' and 'container2'.
  Labels:
    profile:default
    severity:HIGH

cppcheck-iterators2
  Status: enabled
  Analyzer: cppcheck
  Description: Same iterator is used with different containers 'container0' and 'container1'.
  Labels:
    profile:default
    severity:HIGH

cppcheck-iterators3
  Status: enabled
  Analyzer: cppcheck
  Description: Same iterator is used with containers 'container' that are defined in different scopes.
  Labels:
    profile:default
    severity:HIGH

cppcheck-iteratorsCmp1
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-iteratorsCmp2
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-leakNoVarFunctionCall
  Status: enabled
  Analyzer: cppcheck
  Description: Allocation with funcName, funcName doesn't release it.
  Labels:
    profile:default
    severity:HIGH

cppcheck-leakReturnValNotUsed
  Status: enabled
  Analyzer: cppcheck
  Description: Return value of allocation function 'funcName' is not stored.
  Labels:
    profile:default
    severity:HIGH

cppcheck-leakUnsafeArgAlloc
  Status: enabled
  Analyzer: cppcheck
  Description: Unsafe allocation. If funcName() throws, memory could be leaked. Use make_shared<int>() instead.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-literalWithCharPtrCompare
  Status: enabled
  Analyzer: cppcheck
  Description: String literal compared with variable 'foo'. Did you intend to use strcmp() instead?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-mallocOnClassError
  Status: enabled
  Analyzer: cppcheck
  Description: Memory for class instance allocated with malloc(), but class contains a std::string.
  Labels:
    profile:default
    severity:HIGH

cppcheck-mallocOnClassWarning
  Status: enabled
  Analyzer: cppcheck
  Description: Memory for class instance allocated with malloc(), but class provides constructors.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-memleak
  Status: enabled
  Analyzer: cppcheck
  Description: Memory leak: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-memleakOnRealloc
  Status: enabled
  Analyzer: cppcheck
  Description: Common realloc mistake: 'varname' nulled but not freed upon failure
  Labels:
    profile:default
    severity:HIGH

cppcheck-memsetClass
  Status: enabled
  Analyzer: cppcheck
  Description: Using 'memfunc' on class that contains a classname.
  Labels:
    profile:default
    severity:HIGH

cppcheck-memsetClassFloat
  Status: disabled
  Analyzer: cppcheck
  Description: Using memset() on class which contains a floating point number.
  Labels:
    severity:LOW

cppcheck-memsetClassReference
  Status: enabled
  Analyzer: cppcheck
  Description: Using 'memfunc' on class that contains a reference.
  Labels:
    profile:default
    severity:HIGH

cppcheck-memsetValueOutOfRange
  Status: enabled
  Analyzer: cppcheck
  Description: The 2nd memset() argument 'varname' doesn't fit into an 'unsigned char'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-memsetZeroBytes
  Status: enabled
  Analyzer: cppcheck
  Description: memset() called to fill 0 bytes.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-mismatchAllocDealloc
  Status: enabled
  Analyzer: cppcheck
  Description: Mismatching allocation and deallocation: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-mismatchSize
  Status: enabled
  Analyzer: cppcheck
  Description: The allocated size sz is not a multiple of the underlying type's size.
  Labels:
    profile:default
    severity:HIGH

cppcheck-mismatchingContainerExpression
  Status: enabled
  Analyzer: cppcheck
  Description: Iterators to containers from different expressions 'v1' and 'v2' are used together.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-mismatchingContainers
  Status: enabled
  Analyzer: cppcheck
  Description: Iterators of different containers 'v1' and 'v2' are used together.
  Labels:
    profile:default
    severity:HIGH

cppcheck-missingMemberCopy
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-missingReturn
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-moduloAlwaysTrueFalse
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison of modulo result is predetermined, because it is always less than 1.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-multiplySizeof
  Status: enabled
  Analyzer: cppcheck
  Description: Multiplying sizeof() with sizeof() indicates a logic error.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-negativeArraySize
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-negativeContainerIndex
  Status: enabled
  Analyzer: cppcheck
  Description: Array index -1 is out of bounds.
  Labels:
    profile:default
    severity:HIGH

cppcheck-negativeIndex
  Status: enabled
  Analyzer: cppcheck
  Description: Negative array index
  Labels:
    profile:default
    severity:HIGH

cppcheck-negativeMemoryAllocationSize
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-noCopyConstructor
  Status: enabled
  Analyzer: cppcheck
  Description: Class 'class' does not have a copy constructor which is recommended since it has dynamic memory/resource allocation(s).
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-noDestructor
  Status: enabled
  Analyzer: cppcheck
  Description: Class 'class' does not have a destructor which is recommended since it has dynamic memory/resource allocation(s).
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-noOperatorEq
  Status: enabled
  Analyzer: cppcheck
  Description: Class 'class' does not have a operator= which is recommended since it has dynamic memory/resource allocation(s).
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-nullPointer
  Status: enabled
  Analyzer: cppcheck
  Description: Null pointer dereference
  Labels:
    profile:default
    severity:HIGH

cppcheck-nullPointerArithmetic
  Status: enabled
  Analyzer: cppcheck
  Description: Pointer arithmetic with NULL pointer.
  Labels:
    profile:default
    severity:HIGH

cppcheck-nullPointerArithmeticRedundantCheck
  Status: enabled
  Analyzer: cppcheck
  Description: Either the condition is redundant or there is pointer arithmetic with NULL pointer.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-nullPointerDefaultArg
  Status: enabled
  Analyzer: cppcheck
  Description: Possible null pointer dereference if the default parameter value is used: pointer
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-nullPointerRedundantCheck
  Status: enabled
  Analyzer: cppcheck
  Description: Either the condition is redundant or there is possible null pointer dereference: pointer.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-objectIndex
  Status: enabled
  Analyzer: cppcheck
  Description: The address of local variable '' is accessed at non-zero index.
  Labels:
    profile:default
    severity:HIGH

cppcheck-operatorEqMissingReturnStatement
  Status: enabled
  Analyzer: cppcheck
  Description: No 'return' statement in non-void function causes undefined behavior.
  Labels:
    profile:default
    severity:HIGH

cppcheck-operatorEqToSelf
  Status: enabled
  Analyzer: cppcheck
  Description: 'operator=' should check for assignment to self to avoid problems with dynamic memory.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-operatorEqVarError
  Status: enabled
  Analyzer: cppcheck
  Description: Member variable 'classname::' is not assigned a value in 'classname::operator='.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-oppositeInnerCondition
  Status: enabled
  Analyzer: cppcheck
  Description: Opposite inner 'if' condition leads to a dead code block.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-overlappingStrcmp
  Status: enabled
  Analyzer: cppcheck
  Description: The expression 'strcmp(x,"def") != 0' is suspicious. It overlaps 'strcmp(x,"abc") == 0'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-overlappingWriteFunction
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-overlappingWriteUnion
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-pointerAdditionResultNotNull
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison is wrong. Result of 'ptr+1' can't be 0 unless there is pointer overflow, and pointer overflow is undefined behaviour.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-pointerArithBool
  Status: enabled
  Analyzer: cppcheck
  Description: Converting pointer arithmetic result to bool. The bool is always true unless there is undefined behaviour.
  Labels:
    profile:default
    severity:HIGH

cppcheck-pointerSize
  Status: enabled
  Analyzer: cppcheck
  Description: Size of pointer 'varname' used instead of size of its data.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-publicAllocationError
  Status: enabled
  Analyzer: cppcheck
  Description: Possible leak in public function. The pointer 'varname' is not deallocated before it is allocated.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-pureVirtualCall
  Status: enabled
  Analyzer: cppcheck
  Description: Call of pure virtual function 'f' in constructor.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-raceAfterInterlockedDecrement
  Status: enabled
  Analyzer: cppcheck
  Description: Race condition: non-interlocked access after InterlockedDecrement(). Use InterlockedDecrement() return value instead.
  Labels:
    profile:default
    severity:HIGH

cppcheck-readWriteOnlyFile
  Status: enabled
  Analyzer: cppcheck
  Description: Read operation on a file that was opened only for writing.
  Labels:
    profile:default
    severity:HIGH

cppcheck-redundantAssignInSwitch
  Status: enabled
  Analyzer: cppcheck
  Description: Variable 'var' is reassigned a value before the old one has been used. 'break;' missing?
  Labels:
    profile:default
    severity:STYLE

cppcheck-redundantBitwiseOperationInSwitch
  Status: enabled
  Analyzer: cppcheck
  Description: Redundant bitwise operation on 'varname' in 'switch' statement. 'break;' missing?
  Labels:
    profile:default
    severity:STYLE

cppcheck-redundantCopyInSwitch
  Status: enabled
  Analyzer: cppcheck
  Description: Buffer 'var' is being written before its old content has been used. 'break;' missing?
  Labels:
    profile:default
    severity:STYLE

cppcheck-resourceLeak
  Status: enabled
  Analyzer: cppcheck
  Description: Resource leak: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-rethrowNoCurrentException
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnAddressOfAutoVariable
  Status: enabled
  Analyzer: cppcheck
  Description: Address of an auto-variable returned.
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnAddressOfFunctionParameter
  Status: enabled
  Analyzer: cppcheck
  Description: Address of function parameter 'parameter' returned.
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnDanglingLifetime
  Status: enabled
  Analyzer: cppcheck
  Description: Returning object that will be invalid when returning.
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnLocalVariable
  Status: enabled
  Analyzer: cppcheck
  Description: Pointer to local array variable returned.
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnReference
  Status: enabled
  Analyzer: cppcheck
  Description: Reference to local variable returned.
  Labels:
    profile:default
    severity:HIGH

cppcheck-returnTempReference
  Status: enabled
  Analyzer: cppcheck
  Description: Reference to temporary returned.
  Labels:
    profile:default
    severity:HIGH

cppcheck-seekOnAppendedFile
  Status: enabled
  Analyzer: cppcheck
  Description: Repositioning operation performed on a file opened in append mode has no effect.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-selfAssignment
  Status: enabled
  Analyzer: cppcheck
  Description: Redundant assignment of 'varname' to itself.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-selfInitialization
  Status: enabled
  Analyzer: cppcheck
  Description: Member variable 'var' is initialized by itself.
  Labels:
    profile:default
    severity:HIGH

cppcheck-shiftNegativeLHS
  Status: disabled
  Analyzer: cppcheck
  Description: Shifting a negative value is technically undefined behaviour
  Labels:
    severity:LOW

cppcheck-shiftNegative
  Status: enabled
  Analyzer: cppcheck
  Description: Shifting by a negative value is undefined behaviour
  Labels:
    profile:default
    severity:HIGH

cppcheck-shiftTooManyBits
  Status: enabled
  Analyzer: cppcheck
  Description: Shifting 32-bit value by 40 bits is undefined behaviour
  Labels:
    profile:default
    severity:HIGH

cppcheck-shiftTooManyBitsSigned
  Status: enabled
  Analyzer: cppcheck
  Description: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour
  Labels:
    profile:default
    severity:HIGH

cppcheck-signConversion
  Status: enabled
  Analyzer: cppcheck
  Description: Expression 'var' can have a negative value. That is converted to an unsigned value and used in an unsigned calculation.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-signedCharArrayIndex
  Status: enabled
  Analyzer: cppcheck
  Description: Signed 'char' type used as array index.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofCalculation
  Status: enabled
  Analyzer: cppcheck
  Description: Found calculation inside sizeof().
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofDivisionMemfunc
  Status: enabled
  Analyzer: cppcheck
  Description: Division by result of sizeof(). memset() expects a size in bytes, did you intend to multiply instead?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofFunctionCall
  Status: enabled
  Analyzer: cppcheck
  Description: Found function call inside sizeof().
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofsizeof
  Status: enabled
  Analyzer: cppcheck
  Description: Calling 'sizeof' on 'sizeof'.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofwithnumericparameter
  Status: enabled
  Analyzer: cppcheck
  Description: Suspicious usage of 'sizeof' with a numeric constant as parameter.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sizeofwithsilentarraypointer
  Status: enabled
  Analyzer: cppcheck
  Description: Using 'sizeof' on array given as function argument returns size of a pointer.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-sprintfOverlappingData
  Status: enabled
  Analyzer: cppcheck
  Description: Undefined behavior: Variable 'varname' is used as parameter and destination in s[n]printf().
  Labels:
    profile:default
    severity:HIGH

cppcheck-staticStringCompare
  Status: enabled
  Analyzer: cppcheck
  Description: Unnecessary comparison of static strings.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-stlBoundaries
  Status: enabled
  Analyzer: cppcheck
  Description: Dangerous comparison using operator< on iterator.
  Labels:
    profile:default
    severity:HIGH

cppcheck-stlIfFind
  Status: enabled
  Analyzer: cppcheck
  Description: Suspicious condition. The result of find() is an iterator, but it is not properly checked.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-stlOutOfBounds
  Status: enabled
  Analyzer: cppcheck
  Description: When i==foo.size(), foo[i] is out of bounds.
  Labels:
    profile:default
    severity:HIGH

cppcheck-stlcstr
  Status: enabled
  Analyzer: cppcheck
  Description: Dangerous usage of c_str(). The value returned by c_str() is invalid after this call.
  Labels:
    profile:default
    severity:HIGH

cppcheck-stlcstrReturn
  Status: disabled
  Analyzer: cppcheck
  Description: Returning the result of c_str() in a function that returns std::string is slow and redundant.
  Labels:
    severity:LOW

cppcheck-stlcstrParam
  Status: disabled
  Analyzer: cppcheck
  Description: Passing the result of c_str() to a function that takes std::string as argument no. 0 is slow and redundant.
  Labels:
    severity:LOW

cppcheck-stlcstrthrow
  Status: enabled
  Analyzer: cppcheck
  Description: Dangerous usage of c_str(). The value returned by c_str() is invalid after throwing exception.
  Labels:
    profile:default
    severity:HIGH

cppcheck-strPlusChar
  Status: enabled
  Analyzer: cppcheck
  Description: Unusual pointer arithmetic. A value of type 'char' is added to a string literal.
  Labels:
    profile:default
    severity:HIGH

cppcheck-stringCompare
  Status: enabled
  Analyzer: cppcheck
  Description: Comparison of identical string variables.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-stringLiteralWrite
  Status: enabled
  Analyzer: cppcheck
  Description: Modifying string literal directly or indirectly is undefined behaviour.
  Labels:
    profile:default
    severity:HIGH

cppcheck-suspiciousCase
  Status: enabled
  Analyzer: cppcheck
  Description: Found suspicious case label in switch(). Operator '||' probably doesn't work as intended.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-suspiciousSemicolon
  Status: enabled
  Analyzer: cppcheck
  Description: Suspicious use of ; at the end of '' statement.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-thisSubtraction
  Status: enabled
  Analyzer: cppcheck
  Description: Suspicious pointer subtraction. Did you intend to write '->'?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-throwInNoexceptFunction
  Status: enabled
  Analyzer: cppcheck
  Description: Exception thrown in function declared not to throw exceptions.
  Labels:
    profile:default
    severity:HIGH

cppcheck-uninitDerivedMemberVar
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uninitDerivedMemberVarPrivate
  Status: enabled
  Analyzer: cppcheck
  Description:
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uninitMemberVar
  Status: enabled
  Analyzer: cppcheck
  Description: Member variable 'classname::varname' is not initialized in the constructor.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uninitMemberVarPrivate
  Status: enabled
  Analyzer: cppcheck
  Description: Member variable 'classname::varnamepriv' is not initialized in the constructor.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uninitStructMember
  Status: enabled
  Analyzer: cppcheck
  Description: Uninitialized struct member: a.b
  Labels:
    profile:default
    severity:HIGH

cppcheck-uninitdata
  Status: enabled
  Analyzer: cppcheck
  Description: Memory is allocated but not initialized: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-uninitstring
  Status: enabled
  Analyzer: cppcheck
  Description: Dangerous usage of 'varname' (strncpy doesn't always null-terminate it).
  Labels:
    profile:default
    severity:HIGH

cppcheck-uninitvar
  Status: enabled
  Analyzer: cppcheck
  Description: Uninitialized variable: varname
  Labels:
    profile:default
    severity:HIGH

cppcheck-unknownEvaluationOrder
  Status: enabled
  Analyzer: cppcheck
  Description: Expression 'x = x++;' depends on order of evaluation of side effects
  Labels:
    profile:default
    severity:HIGH

cppcheck-unsafeClassRefMember
  Status: enabled
  Analyzer: cppcheck
  Description: Unsafe class: The const reference member 'UnsafeClass::var' is initialized by a const reference constructor argument. You need to be careful about lifetime issues.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-unusedLabelSwitch
  Status: enabled
  Analyzer: cppcheck
  Description: Label '' is not used. Should this be a 'case' of the enclosing switch()?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-unusedLabelSwitchConfiguration
  Status: disabled
  Analyzer: cppcheck
  Description: Label '' is not used. There is #if in function body so the label might be used in code that is removed by the preprocessor. Should this be a 'case' of the enclosing switch()?
  Labels:
    severity:MEDIUM

cppcheck-useClosedFile
  Status: enabled
  Analyzer: cppcheck
  Description: Used file that is not opened.
  Labels:
    profile:default
    severity:HIGH

cppcheck-uselessAssignmentPtrArg
  Status: enabled
  Analyzer: cppcheck
  Description: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uselessCallsCompare
  Status: enabled
  Analyzer: cppcheck
  Description: It is inefficient to call 'str.find(str)' as it always returns 0.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uselessCallsEmpty
  Status: enabled
  Analyzer: cppcheck
  Description: Ineffective call of function 'empty()'. Did you intend to call 'clear()' instead?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-uselessCallsRemove
  Status: enabled
  Analyzer: cppcheck
  Description: Return value of std::remove() ignored. Elements remain in container.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-va_end_missing
  Status: enabled
  Analyzer: cppcheck
  Description: va_list 'vl' was opened but not closed by va_end().
  Labels:
    profile:default
    severity:HIGH

cppcheck-va_list_usedBeforeStarted
  Status: enabled
  Analyzer: cppcheck
  Description: va_list 'vl' used before va_start() was called.
  Labels:
    profile:default
    severity:HIGH

cppcheck-va_start_referencePassed
  Status: enabled
  Analyzer: cppcheck
  Description: Using reference 'arg1' as parameter for va_start() results in undefined behaviour.
  Labels:
    profile:default
    severity:HIGH

cppcheck-va_start_subsequentCalls
  Status: enabled
  Analyzer: cppcheck
  Description: va_start() or va_copy() called subsequently on 'vl' without va_end() in between.
  Labels:
    profile:default
    severity:HIGH

cppcheck-va_start_wrongParameter
  Status: enabled
  Analyzer: cppcheck
  Description: 'arg1' given to va_start() is not last named argument of the function. Did you intend to pass 'arg2'?
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-virtualCallInConstructor
  Status: enabled
  Analyzer: cppcheck
  Description: Virtual function 'f' is called from constructor '' at line 1. Dynamic binding is not used.
  Labels:
    profile:default
    severity:STYLE

cppcheck-virtualDestructor
  Status: enabled
  Analyzer: cppcheck
  Description: Class 'Base' which is inherited by class 'Derived' does not have a virtual destructor.
  Labels:
    profile:default
    severity:HIGH

cppcheck-writeReadOnlyFile
  Status: enabled
  Analyzer: cppcheck
  Description: Write operation on a file that was opened only for reading.
  Labels:
    profile:default
    severity:HIGH

cppcheck-wrongPipeParameterSize
  Status: enabled
  Analyzer: cppcheck
  Description: Buffer 'varname' must have size of 2 integers if used as parameter of pipe().
  Labels:
    profile:default
    severity:HIGH

cppcheck-wrongPrintfScanfArgNum
  Status: enabled
  Analyzer: cppcheck
  Description: printf format string requires 3 parameters but only 2 are given.
  Labels:
    profile:default
    severity:HIGH

cppcheck-wrongPrintfScanfParameterPositionError
  Status: enabled
  Analyzer: cppcheck
  Description: printf: referencing parameter 2 while 1 arguments given
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-wrongmathcall
  Status: enabled
  Analyzer: cppcheck
  Description: Passing value '#' to #() leads to implementation-defined result.
  Labels:
    profile:default
    severity:MEDIUM

cppcheck-zerodiv
  Status: enabled
  Analyzer: cppcheck
  Description: Division by zero.
  Labels:
    profile:default
    severity:HIGH

cppcheck-zerodivcond
  Status: enabled
  Analyzer: cppcheck
  Description: Either the condition is redundant or there is division by zero.
  Labels:
    profile:default
    severity:HIGH

Click to see initial problems on this MR

It has some problems though, any help here would be very much appreciated!

  • Since the checker analyzes all of the *.cc files, it also catches those that are supposed to fail at compilation time and show them as critical.
    • Solved: Add a skipfile that ignores the problematic tests.
  • I tried to use a configuration file to easily set up the analysis from a centralized file (e.g., .codechecker.json) rather than in the command line from the gitlab-ci.yml, but I failed to set up the reuse lint because JSON files do not allow comments for the license.
    • Solved: one just needs a .codechecker.json.licese file too.

This is a very simple approach where everything is done manually in the .gitlab-ci.yml and could be improved later on like:

  • CodeChecker has many default checks that may be very noisy to start with (419 issues!). So we probably need to fine tune the checks that we want from it.
    • Solved: Add specific tests that we need to the .codechecker/config.json file.
  • Adding a diff between the source and target branch so that only new errors on the source branch are shown in the MR
  • Have a more centralized script so that it can be easily replicated on other pipelines.
    • Solved: Moved the CI part to the common config files ci-config!16 (merged). Projects now only need to provide .codechecker/config.json to activate this.
Edited by Santiago Ospina De Los Ríos

Merge request reports