https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110977

--- Comment #2 from Aaron Ballman <aaron at aaronballman dot com> ---
(In reply to Andrew Pinski from comment #1)
> I don't think GCC has all of MSVC extensions implemented so defining that
> might break code ....

Clang doesn't either, FWIW. But the point is well-taken; code thinking this is
a feature testing macro that says we've implemented all MS extensions could be
tripped up. But not defining the macro means code guarding use of MS extensions
which are supported also gets tripped up, just in the opposite direction.

Microsoft adds new extensions with basically every significant release, so
we'll always be behind them in terms of implementation. Because of that, I
think treating _MSC_EXTENSIONS as meaning "the user enabled whatever MS
extensions we support" is a practical interpretation.

Reply via email to