<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/146693>146693</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [clang-tidy] suppress dump of disabled checks options when running `--dump-config`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            enhancement,
            clang-tidy
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          vbvictor
      </td>
    </tr>
</table>

<pre>
    When running `clang-tidy --dump-config`, the output includes `CheckOptions` for checks that are currently disabled in the `Checks` configuration. This creates unnecessary noise and can be confusing for users trying to understand their active configuration.

Need to filter out disabled check options: Only show `CheckOptions` for checks that are actually enabled in the current `Checks` configuration

Here is an example when running on LLVM codebase:
`clang-tidy -p build --dump-config clang-tools-extra/clang-tidy/ClangTidy.cpp`
```
---
Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,clang-diagnostic-*,llvm-*,misc-*,-misc-const-correctness,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-misc-no-recursion,-misc-use-anonymous-namespace,readability-identifier-naming,-misc-include-cleaner'
WarningsAsErrors: ''
HeaderFileExtensions:
  - ''
  - h
  - hh
  - hpp
  - hxx
ImplementationFileExtensions:
  - c
  - cc
  - cpp
  - cxx
HeaderFilterRegex: ''
ExcludeHeaderFilterRegex: ''
FormatStyle: none
User:            victor
CheckOptions:
 cert-arr39-c.WarnOnSizeOfCompareToConstant: 'false'
 cert-arr39-c.WarnOnSizeOfConstant: 'false'
 cert-arr39-c.WarnOnSizeOfIntegerExpression: 'false'
 cert-arr39-c.WarnOnSizeOfPointer: 'false'
 cert-arr39-c.WarnOnSizeOfPointerToAggregate: 'false'
 cert-arr39-c.WarnOnSizeOfThis: 'false'
  cert-dcl16-c.NewSuffixes: 'L;LL;LU;LLU'
  cert-err33-c.AllowCastToVoid: 'true'
 cert-err33-c.CheckedFunctions: '^::aligned_alloc;^::asctime_s;^::at_quick_exit;^::atexit;^::bsearch;^::bsearch_s;^::btowc;^::c16rtomb;^::c32rtomb;^::calloc;^::clock;^::cnd_broadcast;^::cnd_init;^::cnd_signal;^::cnd_timedwait;^::cnd_wait;^::ctime_s;^::fclose;^::fflush;^::fgetc;^::fgetpos;^::fgets;^::fgetwc;^::fopen;^::fopen_s;^::fprintf;^::fprintf_s;^::fputc;^::fputs;^::fputwc;^::fputws;^::fread;^::freopen;^::freopen_s;^::fscanf;^::fscanf_s;^::fseek;^::fsetpos;^::ftell;^::fwprintf;^::fwprintf_s;^::fwrite;^::fwscanf;^::fwscanf_s;^::getc;^::getchar;^::getenv;^::getenv_s;^::gets_s;^::getwc;^::getwchar;^::gmtime;^::gmtime_s;^::localtime;^::localtime_s;^::malloc;^::mbrtoc16;^::mbrtoc32;^::mbsrtowcs;^::mbsrtowcs_s;^::mbstowcs;^::mbstowcs_s;^::memchr;^::mktime;^::mtx_init;^::mtx_lock;^::mtx_timedlock;^::mtx_trylock;^::mtx_unlock;^::printf_s;^::putc;^::putwc;^::raise;^::realloc;^::remove;^::rename;^::scanf;^::scanf_s;^::setlocale;^::setvbuf;^::signal;^::snprintf;^::snprintf_s;^::sprintf;^::sprintf_s;^::sscanf;^::sscanf_s;^::strchr;^::strerror_s;^::strftime;^::strpbrk;^::strrchr;^::strstr;^::strtod;^::strtof;^::strtoimax;^::strtok;^::strtok_s;^::strtol;^::strtold;^::strtoll;^::strtoul;^::strtoull;^::strtoumax;^::strxfrm;^::swprintf;^::swprintf_s;^::swscanf;^::swscanf_s;^::thrd_create;^::thrd_detach;^::thrd_join;^::thrd_sleep;^::time;^::timespec_get;^::tmpfile;^::tmpfile_s;^::tmpnam;^::tmpnam_s;^::tss_create;^::tss_get;^::tss_set;^::ungetc;^::ungetwc;^::vfprintf;^::vfprintf_s;^::vfscanf;^::vfscanf_s;^::vfwprintf;^::vfwprintf_s;^::vfwscanf;^::vfwscanf_s;^::vprintf_s;^::vscanf;^::vscanf_s;^::vsnprintf;^::vsnprintf_s;^::vsprintf;^::vsprintf_s;^::vsscanf;^::vsscanf_s;^::vswprintf;^::vswprintf_s;^::vswscanf;^::vswscanf_s;^::vwprintf_s;^::vwscanf;^::vwscanf_s;^::wcrtomb;^::wcschr;^::wcsftime;^::wcspbrk;^::wcsrchr;^::wcsrtombs;^::wcsrtombs_s;^::wcsstr;^::wcstod;^::wcstof;^::wcstoimax;^::wcstok;^::wcstok_s;^::wcstol;^::wcstold;^::wcstoll;^::wcstombs;^::wcstombs_s;^::wcstoul;^::wcstoull;^::wcstoumax;^::wcsxfrm;^::wctob;^::wctrans;^::wctype;^::wmemchr;^::wprintf_s;^::wscanf;^::wscanf_s;'
 cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField: 'false'
 cert-str34-c.DiagnoseSignedUnsignedCharComparisons: 'false'
 cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic: 'true'
  google-readability-braces-around-statements.ShortStatementLines: '1'
  google-readability-function-size.StatementThreshold: '800'
 google-readability-namespace-comments.ShortNamespaceLines: '10'
 google-readability-namespace-comments.SpacesBeforeComments: '2'
 llvm-else-after-return.WarnOnConditionVariables: 'false'
 llvm-else-after-return.WarnOnUnfixable: 'false'
 llvm-namespace-comment.ShortNamespaceLines: '1'
 llvm-namespace-comment.SpacesBeforeComments: '1'
 llvm-qualified-auto.AddConstToQualified: 'false'
 misc-coroutine-hostile-raii.RAIITypesList: 'std::lock_guard;std::scoped_lock'
 misc-coroutine-hostile-raii.SafeAwaitableList: ''
 misc-header-include-cycle.IgnoredFilesList: ''
 misc-throw-by-value-catch-by-reference.CheckThrowTemporaries: 'true'
 misc-throw-by-value-catch-by-reference.MaxSize: '18446744073709551615'
 misc-throw-by-value-catch-by-reference.WarnOnLargeObjects: 'false'
 misc-uniqueptr-reset-release.IncludeStyle: llvm
 misc-use-internal-linkage.FixMode: UseStatic
 readability-identifier-naming.AggressiveDependentMemberLookup: 'false'
 readability-identifier-naming.CheckAnonFieldInParent: 'false'
 readability-identifier-naming.ClassCase: CamelCase
 readability-identifier-naming.ClassHungarianPrefix: Off
 readability-identifier-naming.ClassIgnoredRegexp: ''
 readability-identifier-naming.ClassPrefix: ''
 readability-identifier-naming.ClassSuffix: ''
 readability-identifier-naming.EnumCase: CamelCase
 readability-identifier-naming.EnumHungarianPrefix: Off
 readability-identifier-naming.EnumIgnoredRegexp: ''
 readability-identifier-naming.EnumPrefix: ''
 readability-identifier-naming.EnumSuffix: ''
 readability-identifier-naming.FunctionCase: camelBack
 readability-identifier-naming.FunctionHungarianPrefix: Off
 readability-identifier-naming.FunctionIgnoredRegexp: LLVMFuzzerTestOneInput
 readability-identifier-naming.FunctionPrefix: ''
 readability-identifier-naming.FunctionSuffix: ''
 readability-identifier-naming.GetConfigPerFile: 'true'
 readability-identifier-naming.IgnoreFailedSplit: 'false'
 readability-identifier-naming.IgnoreMainLikeFunctions: 'true'
 readability-identifier-naming.MemberCase: CamelCase
 readability-identifier-naming.MemberHungarianPrefix: Off
 readability-identifier-naming.MemberIgnoredRegexp: ''
 readability-identifier-naming.MemberPrefix: ''
 readability-identifier-naming.MemberSuffix: ''
 readability-identifier-naming.ParameterCase: CamelCase
 readability-identifier-naming.ParameterHungarianPrefix: Off
 readability-identifier-naming.ParameterIgnoredRegexp: ''
 readability-identifier-naming.ParameterPrefix: ''
 readability-identifier-naming.ParameterSuffix: ''
 readability-identifier-naming.UnionCase: CamelCase
 readability-identifier-naming.UnionHungarianPrefix: Off
 readability-identifier-naming.UnionIgnoredRegexp: ''
 readability-identifier-naming.UnionPrefix: ''
 readability-identifier-naming.UnionSuffix: ''
 readability-identifier-naming.VariableCase: CamelCase
 readability-identifier-naming.VariableHungarianPrefix: Off
 readability-identifier-naming.VariableIgnoredRegexp: ''
 readability-identifier-naming.VariablePrefix: ''
 readability-identifier-naming.VariableSuffix: ''
SystemHeaders: false
...
```

Clearly https://github.com/llvm/llvm-project/blob/main/.clang-tidy doesn't have any `cert` or `google` checks enabled.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJycWl9zm7rT_jTkhsGD8Z-0F7lw3fptZtKTvidJz2VGiMXoREgcrcB2Pv1vJMAxSE1jnznTmId9Vqvd1YIWEUS2FQA3weJLsPh6RWpdSHXTpA2jWqqrVGaHm38KEKGqhWBiGwbLmHIitpFm2SGMoqwuq4hKkbNtsIyDZB3qAkJZ66rWIROU1xmgYa0LoC_3lWZSYLCMw1yqkBoMQ10QHRIFIa2VAqH5IcwYkpRDFjJhFfYKLLUdrlbEKJuEjwXDkCogGjCshQAKiEQdQiEZQkhEFlIiwhQssUYzDTN6jaAw1OpgAC3DWmSgUBt5XQBTIaGaNTAaLohXQbz6CyAznJxxDcrM981kO6tQdlOdrcJ7wQ8hFnL3UT8QqmvC-SEEMfBC5593vNFa9x0UhAxDIkLYk7LiEO5OgyhFeHf360dIZQYpQQhmhjUKbRWmNePZMMZhJyElxwj2WpEg2byxgmSzNhePLDtMaFWZlLCKu__jVRRFQbzqrJ-twiC5bukZI1shUTMaBckqSNYtTAThh1dQHTi451A4b8ruZ8mwRyP7m0qBOqJSKaBaAOLxTi1qhCyqiCIlaFBvd4QUUaVYQzREJZQpqKghipmYYMRERDlBhFP5SAGtFZpIHNUjRERIcShljZEgJWBFKATJWgHJSMo404eIZSA0yxkoI8LE9sjvFlFEORABKkiug3j1D1EmkrjCb0pJ1buyvfkdSAZqwzh822sQ2OVhEK_CMHoTMxdF__f4o6r6X_t9EK9uTfaUILRNr9_ppP3f44-jGmrVHE3SoP6GLewHBn_b2ym-L7SRqiT6QR-4yddQSAFBvHpCUOby5L-2dvVZdn9ch8YgCkpHRKnZ54hOjBPvxQN7hft8LcuKKHiUa5MnROhu7JxwhM5f75DP59wKDVtQ3_aVArQJcwb5p2RCtxM_k_IoV9utgi3RcA7b1FiPfEvIKJ8uIzr5C3YPdZ6zPfSyd8Hsy53958n-ehrwQKnZLKKTFedytyaoH-UvybKOq1U9MKuXtlGFbFMLeqywRm7xzcR4tiLcPNKyZ8K5pMHsy9sNpJqV8IwDUD__VzP68gx7poc3xkiKQBQtPNBQZarlbjAwnS6VlmU6wGaJizkmUy7pywAQ2XOqJMkoQT2-wQRzMPN8J3yMGj9kO-KKO5jrsZxyaR4ZJ0jOaxz4Jd-CpmOgkjiGHGDouFxWIBxgZE6lmNC5BxrL1SOTqlo7EjtHZDeUMTV7BDhGttBoeKRE5C4ylgJ4GQGO3zTwQUDznccFO68PdorpYeh2rl07j2HjeJrrgqgRBKJxEUcROshurHvnKC9NIrrIUBWXlPCx4BEcypbOYitTpSWdLl1slgwxVGaJoxd8HsM-UZ8klLQYzLl8GU-l1HtnkRtsXCUMZpe494Y6-OBajFFfBo0XkbNkFGHD4qDAcbSCUjYjIfNedIo4aelJSgRtgwsjsEnrIdWpgSjcJdNjozE8gl4512CfxVqNgoxagXmDc-TycfBRqypVLyPIow_1GNEyc5DcQVhJ9g44Hk_LF8dULbmLuCNyV6r2QR7MtWyfq3IAeYogeosguiUPfSVPFyp7breVDpyBJsM3AQv_K5lwQOQA1QAdBdZcYwX0eQuDla3LKmfD5O6gkaFlJUjpIiMpRN9sEJ1hEZ9xCNViXP8tMlz5jedJ3HgfxY37MGx8T8PG92Rr_I-2xvMka7yPssZLd8k-qq9uNP7C0XgqR-MtHY1bOxpf8Wh8Od74k7zxZHnjTfPGz_fQfewddd5idxRHNWlH0almO4rjarajOK5mBjL60QuOTcFR5dtRHFU-i-QOMq58Fhzb5lQ-i3EXcUfkrpQ7J_-UxjWygzyYO4dxjdxRLUeh0oqI0ZD6UA0j5b6ZeFPGzZjThDnZyElZLeYRrapuh8kPt3Z_-Z3gQ40Vo0zWuGHAs9_tUFGr2Tyik69tAwge7I7vSdhmZrYuiGq38wzf9ocDJVVFpYJtzTLgTAB-tNMzud0KqWDdXv3DdLHi_IeV_9WLfwEmtj_rlDPq7mTDrZRbDtFp6ydVhAJGRMlaZBFqom3DBScPhVT6ob--M4Z2GqfvqMu7jXGE7BUmR_pjoQALeXTqpzjulHh0HLtUEZXliTF_9fjAmDMVmUv8ArlxZAd2mpJOke3jAUeISK5BRQp0rUSXLmspMmYmePS4J8LvangSOdsb5u-IjtXvzf4PxN_PdsD8ryac5QyyiNRaTlZZZptKj_L_-xseY7vGppK1ZgKiQqJmJgCEscnfq9vbx0MFeMewb0yhzo57opfnbU2UqVVHFKmsIGt3E38e4IHksNoRpo0nTwY5pRa2o_fWwjxQDt0ayjaMD4w75elCyV2UHqKG8BoiSjQtzKWCHBQICm0X6NGIPUJZSUUUO4bkZL19UNsPsn9gr30-TD_N58vr-Ty-nl3HnxeL6XK6OE9fm2d3RG3hPv0XqPblaNd8Zv_VUGmTogg6UsCBIExuW5cd250mSd5ICJHt5gnCI87EC9nCZMP2P2RmhZ8QzLpnthv7bpd5YruBiKyBr1CBMPfbenYn5Utdecx-X5-Ny0pIYQv4rfhJFHgbo39QYyrsuv00Ea5JCdxefIz3vRZbUxvETwU5s13k-zz_ILnLTtt_roap-QH224hn0dq26Tm0b6IuL_CPoV3qHsO92DuGfL5zDOt83_St4d4_1PjnC6EvH6de6qOe7_jp7u7Xj039-grqEVDfC7gVVa0_rvB83_XM8_33f6DX9mvfz_YrkltW3-e3k98QxiF7qDg7f_m3Gn4QJu7YC4xb_R82pK1kFyyTlnhpErTsi5dKSz8_4C3v_HD_7D98XuCoI_dSXx0VXOyuo4bzPXaknu-0J3FSYM5wmOVd6ixLvthRln2-kyztfAf1b-cX-KinXuqmnn-xp3oF5zurZ3r89XBADWX7jdtWsrYcxqvJZDI6JBHEqzUHovghLLSu7MfrZBMkmy3TRZ1OqCyDZGNfCds_UaWkec0Mkk3KZRokm5IwESSbycmJjkwCClM-w4I0EBJxsKd5QOlgGYdSmat2C2ePlbRnUroTKJOr7GaWfZ59JldwM71eTOfL2efrxVVxE8ezeb5YLuZ5PKVJvPy0SOaLNE1miwVdLBafrthNEieL-DpOprP5crqYfFqQfD6HdD6fXy-AzIJ5DCVhfGJmMpFqe8UQa7iZzpfLz7MrTlLgaE8oJQmIgghqN7RBkgTJOkiS0-MnSbD4eqVurE_SeovBPOYMNb7p1kxze97phLb4GmJd2Q_xYVaXVSjz0XEe7M_zDA_SBMt4fATqqlb85uyo2RljkGy6STc3yf8CAAD__3TTHU8">