vezel-dev / zig-sdk

An MSBuild SDK for building Zig, C, and C++ projects using the Zig compiler.

Home Page:https://docs.vezel.dev/zig-sdk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`MicrosoftExtensions` should control (and disable if `true`) certain warnings

alexrp opened this issue · comments

Some candidates (need to review each):

  • -Wmicrosoft-abstract (see #37)
  • -Wmicrosoft-anon-tag
  • -Wmicrosoft-charize (already controlled by -fms-extensions)
  • -Wmicrosoft-comment-paste (not supported in newer MSVC versions, and seems insane)
  • -Wmicrosoft-cpp-macro (already controlled by -fms-extensions)
  • -Wmicrosoft-enum-forward-reference (this is both a GNU and Microsoft extension, and controlled by appropriate flags)
  • -Wmicrosoft-explicit-constructor-call (limited usefulness)
  • -Wmicrosoft-fixed-enum (already controlled by -fms-extensions)
  • -Wmicrosoft-flexible-array (already controlled by -fms-extensions)
  • -Wmicrosoft-mutable-reference (I can't figure out what this even is, and it Clang doesn't seem to emit it)
  • -Wmicrosoft-sealed (unnecessary as C++11 has final)
  • -Wmicrosoft-static-assert (Clang has code for this diagnostic, but I suspect it's broken)
  • -Wmicrosoft-union-member-reference

Trimmed down to -Wmicrosoft-anon-tag and -Wmicrosoft-union-member-reference.

-Wmicrosoft-abstract will also need to be looked at in Clang 13 (see #37).