• Bruce Dawson's avatar
    Remove windows.h from win32-headers.h · fb9e1299
    Bruce Dawson authored
    Windows.h causes massive namespace pollution with its defining of many
    macros, it adds to build times, it disables warnings, and it makes it
    easier to write non-portable code.
    
    This change removes windows.h from V8's win32-headers.h. It does this
    by replicating the small number of typedefs that are needed and by
    defining three "proxy" types that are the same size and layout. The
    V8ToWindowsType functions are used to reinterpret_cast between the
    types.
    
    Prior to this change there were over 760 v8-related source files that
    include windows.h. After this change there are 16.
    
    Bug: chromium:796644
    Change-Id: I89efeed47028faae72de2da4f1dae345d8d7746c
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3042215
    Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
    Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#76064}
    fb9e1299
win32-headers.h 3.76 KB