• Derek Bruening's avatar
    i#2876 clang-format: massive reformat of every file (#3093) · f1713ec4
    Derek Bruening authored
    Massive clang-format of every C or C++ source file (*.h, *.c, *.cpp),
    except for:
    + third_party/
    + ext/drsysm/libelftc/include/
    + ext/drsyms/demangle.cc
    
    This is a single, large commit by design to present a single history
    disruption point and bring the code base into a consistent format.
    clang-format version 6.0 was used.
    
    Tweaks the clang-format rules to indent 4 after pre-processor hashes, to
    allow single-line case labels, and align trailing comments.
    
    Disables the pp_indent vera style check as we changed the indent rule and
    clang-format now covers it.  Leaves the other checks, even though some are
    redundant (they found clang-format errors).
    
    Moves C++ token defines from globals_shared.h and globals.h to a new
    header, core/lib/c_defines.h, to avoid a clang-format parsing error where
    it fails to identify the include guard.
    
    Adds genapi.pl removal of extra indentation inside API_EXPORT_ONLY and
    CLIENT_INTERFACE regions.
    
    Adds exclusions around large regions we don't want to format, in these
    files:
    + core/win32/syscallx.h
    + core/arch/x86/decode_table.c
    + core/arch/arm/table_a32_pred.c
    + core/arch/arm/table_a32_unpred.c
    + core/arch/arm/table_t32_16.c
    + core/arch/arm/table_t32_16_it.c
    + core/arch/arm/table_t32_base.c
    + core/arch/arm/table_t32_coproc.c
    + core/arch/arm/table_encode.c
    
    Adds smaller exclusions to work around clang-format bugs:
    + Several missing break-after-return-type
    + Several >90-char lines
    + Misc scattered issues, all listed in #2876
    
    Issue: #2876
    f1713ec4