Index: include/clang/Basic/DiagnosticGroups.td =================================================================== --- include/clang/Basic/DiagnosticGroups.td +++ include/clang/Basic/DiagnosticGroups.td @@ -717,6 +717,7 @@ // Warnings for Microsoft extensions. def MicrosoftCharize : DiagGroup<"microsoft-charize">; +def MicrosoftInclude : DiagGroup<"microsoft-include">; def MicrosoftCppMacro : DiagGroup<"microsoft-cpp-macro">; def MicrosoftFixedEnum : DiagGroup<"microsoft-fixed-enum">; def MicrosoftSealed : DiagGroup<"microsoft-sealed">; @@ -743,12 +744,15 @@ def MicrosoftConstInit : DiagGroup<"microsoft-const-init">; def MicrosoftVoidPseudoDtor : DiagGroup<"microsoft-void-pseudo-dtor">; def MicrosoftAnonTag : DiagGroup<"microsoft-anon-tag">; +// Aliases. +def : DiagGroup<"msvc-include", [MicrosoftInclude]>; + // -Wmsvc-include = -Wmicrosoft-include // Warnings group for warnings about Microsoft extensions. def Microsoft : DiagGroup<"microsoft", - [MicrosoftCharize, MicrosoftCppMacro, MicrosoftFixedEnum, MicrosoftSealed, - MicrosoftUnqualifiedFriend, MicrosoftExceptionSpec, MicrosoftUsingDecl, - MicrosoftMutableReference, MicrosoftPureDefinition, + [MicrosoftCharize, MicrosoftInclude, MicrosoftCppMacro, MicrosoftFixedEnum, + MicrosoftSealed, MicrosoftUnqualifiedFriend, MicrosoftExceptionSpec, + MicrosoftUsingDecl, MicrosoftMutableReference, MicrosoftPureDefinition, MicrosoftUnionMemberReference, MicrosoftExplicitConstructorCall, MicrosoftEnumValue, MicrosoftDefaultArgRedefinition, MicrosoftTemplate, MicrosoftRedeclareStatic, MicrosoftEnumForwardReference, MicrosoftGoto, Index: include/clang/Basic/DiagnosticLexKinds.td =================================================================== --- include/clang/Basic/DiagnosticLexKinds.td +++ include/clang/Basic/DiagnosticLexKinds.td @@ -311,8 +311,8 @@ def err_pp_import_directive_ms : Error< "#import of type library is an unsupported Microsoft feature">; def ext_pp_include_search_ms : ExtWarn< - "#include resolved using non-portable MSVC search rules as: %0">, - InGroup>; + "#include resolved using non-portable Microsoft search rules as: %0">, + InGroup; def ext_pp_ident_directive : Extension<"#ident is a language extension">; def ext_pp_include_next_directive : Extension< Index: include/clang/Basic/DiagnosticSemaKinds.td =================================================================== --- include/clang/Basic/DiagnosticSemaKinds.td +++ include/clang/Basic/DiagnosticSemaKinds.td @@ -548,14 +548,14 @@ def warn_pragma_pack_invalid_alignment : Warning< "expected #pragma pack parameter to be '1', '2', '4', '8', or '16'">, InGroup; -// Follow the MSVC implementation. +// Follow the Microsoft implementation. def warn_pragma_pack_show : Warning<"value of #pragma pack(show) == %0">; def warn_pragma_pack_pop_identifer_and_alignment : Warning< "specifying both a name and alignment to 'pop' is undefined">; def warn_pragma_pop_failed : Warning<"#pragma %0(pop, ...) failed: %1">, InGroup; def warn_cxx_ms_struct : - Warning<"ms_struct may not produce MSVC-compatible layouts for classes " + Warning<"ms_struct may not produce Microsoft-compatible layouts for classes " "with base classes or virtual functions">, DefaultError, InGroup; def err_section_conflict : Error<"%0 causes a section type conflict with %1">; Index: test/Preprocessor/Inputs/microsoft-header-search/a/findme.h =================================================================== --- test/Preprocessor/Inputs/microsoft-header-search/a/findme.h +++ test/Preprocessor/Inputs/microsoft-header-search/a/findme.h @@ -1,3 +1,3 @@ #pragma once -#warning findme.h successfully included using MS search rules \ No newline at end of file +#warning findme.h successfully included using Microsoft header search rules Index: test/Preprocessor/Inputs/microsoft-header-search/findme.h =================================================================== --- test/Preprocessor/Inputs/microsoft-header-search/findme.h +++ test/Preprocessor/Inputs/microsoft-header-search/findme.h @@ -1,3 +1,3 @@ #pragma once -#error Wrong findme.h included, MSVC header search incorrect \ No newline at end of file +#error Wrong findme.h included, Microsoft header search incorrect Index: test/Preprocessor/microsoft-header-search.c =================================================================== --- test/Preprocessor/microsoft-header-search.c +++ test/Preprocessor/microsoft-header-search.c @@ -1,7 +1,7 @@ // RUN: %clang_cc1 -I%S/Inputs/microsoft-header-search %s -fms-compatibility -verify -// expected-warning@Inputs/microsoft-header-search/a/findme.h:3 {{findme.h successfully included using MS search rules}} -// expected-warning@Inputs/microsoft-header-search/a/b/include3.h:3 {{#include resolved using non-portable MSVC search rules as}} +// expected-warning@Inputs/microsoft-header-search/a/findme.h:3 {{findme.h successfully included using Microsoft header search rules}} +// expected-warning@Inputs/microsoft-header-search/a/b/include3.h:3 {{#include resolved using non-portable Microsoft search rules as}} // expected-warning@Inputs/microsoft-header-search/falsepos.h:3 {{successfully resolved the falsepos.h header}} Index: test/SemaCXX/ms_struct.cpp =================================================================== --- test/SemaCXX/ms_struct.cpp +++ test/SemaCXX/ms_struct.cpp @@ -11,9 +11,9 @@ struct B : public A { #ifdef TEST_FOR_ERROR - // expected-error@-2 {{ms_struct may not produce MSVC-compatible layouts for classes with base classes or virtual functions}} + // expected-error@-2 {{ms_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions}} #else - // expected-warning@-4 {{ms_struct may not produce MSVC-compatible layouts for classes with base classes or virtual functions}} + // expected-warning@-4 {{ms_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions}} #endif unsigned long c:16; int d; @@ -26,9 +26,9 @@ // rdar://16178895 struct C { #ifdef TEST_FOR_ERROR - // expected-error@-2 {{ms_struct may not produce MSVC-compatible layouts for classes with base classes or virtual functions}} + // expected-error@-2 {{ms_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions}} #else - // expected-warning@-4 {{ms_struct may not produce MSVC-compatible layouts for classes with base classes or virtual functions}} + // expected-warning@-4 {{ms_struct may not produce Microsoft-compatible layouts for classes with base classes or virtual functions}} #endif virtual void foo(); long long n;