# Extra Clang Tools 8 documentation

## clang-tidy - cppcoreguidelines-macro-usage

# cppcoreguidelines-macro-usage

Finds macro usage that is considered problematic because better language constructs exist for the task.

The relevant sections in the C++ Core Guidelines are Enum.1, ES.30, ES.31 and ES.33.

## Options

`AllowedRegexp```

  A regular expression to filter allowed macros. For example DEBUG*|LIBTORRENT*|TORRENT*|UNI* could be applied to filter libtorrent. Default value is ^DEBUG_*.

`CheckCapsOnly```

  Boolean flag to warn on all macros except those with CAPS_ONLY names. This option is intended to ease introduction of this check into older code bases. Default value is 0/false.

`IgnoreCommandLineMacros```

  Boolean flag to toggle ignoring command-line-defined macros. Default value is 1/true.