Skip to content
  • Brad King's avatar
    Clang: For MSVC ABI do not use modes older than C++14 · d50b31be
    Brad King authored
    Since commit d44c0db0 (clang: setup correct configuration in gnu mode,
    2019-02-20, v3.15.0-rc1~41^2~5) we support the GNU-like Clang that
    targets the MSVC ABI.  However, Clang cannot compile with the MSVC
    standard library unless it runs in a mode aware of C++14 (since MSVC
    itself does not even have a lower mode).  When `CMAKE_CXX_STANDARD` is
    set to 98 or 11, use C++14 anyway.
    
    Since Clang's default mode is aware of C++14, another option is to not
    add any flags for 98 or 11.  However, if a future Clang version ever
    defaults to a higher C++ standard, setting the standard to 98 or 11
    should at least not use a mode higher than 14.
    
    Also revert test updates from commit 4819ff96 (Tests: fix failures
    with gnu mode clang on windows, 2019-03-21, v3.15.0-rc1~41^2~3) that
    were meant to work around the standard selection problem.
    
    Fixes: #19496
    d50b31be