[PATCH] D38502: allow access decl without using keyword when emulate msvc

comicfans44 via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 3 06:43:04 PDT 2017


comicfans44 created this revision.
comicfans44 added a project: clang.

msvc allow such code construction in vs2010 / vs2017 , needs someone check this behavior in VS2012/VS2013/VS2015


Repository:
  rL LLVM

https://reviews.llvm.org/D38502

Files:
  clang/lib/Sema/SemaDeclCXX.cpp


Index: clang/lib/Sema/SemaDeclCXX.cpp
===================================================================
--- clang/lib/Sema/SemaDeclCXX.cpp
+++ clang/lib/Sema/SemaDeclCXX.cpp
@@ -8978,11 +8978,14 @@
     return nullptr;
 
   // Warn about access declarations.
+  // MSVC allow access decl without using
   if (UsingLoc.isInvalid()) {
     Diag(Name.getLocStart(),
-         getLangOpts().CPlusPlus11 ? diag::err_access_decl
-                                   : diag::warn_access_decl_deprecated)
-      << FixItHint::CreateInsertion(SS.getRange().getBegin(), "using ");
+         getLangOpts().MSVCCompat
+             ? diag::warn_access_decl_deprecated
+             : (getLangOpts().CPlusPlus11 ? diag::err_access_decl
+                                          : diag::warn_access_decl_deprecated))
+        << FixItHint::CreateInsertion(SS.getRange().getBegin(), "using ");
   }
 
   if (EllipsisLoc.isInvalid()) {


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38502.117517.patch
Type: text/x-patch
Size: 922 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20171003/d39eb8cd/attachment-0001.bin>


More information about the cfe-commits mailing list