[PATCH] D28188: remove some visibility attributes/DLL storage

Saleem Abdulrasool via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 30 16:24:02 PST 2016


compnerd created this revision.
compnerd added reviewers: EricWF, smeenai.
compnerd added a subscriber: llvm-commits.
compnerd set the repository for this revision to rL LLVM.

When building libc++ with clang-cl, the duplicated annotation of these methods would cause an error.

  cannot apply 'dllexport' to a 'dllexport' class

Since the class is already marked with the appropriate attribute, the function should inherit the visibility/DLL storage.  Remove the secondary annotation.


Repository:
  rL LLVM

https://reviews.llvm.org/D28188

Files:
  include/optional
  include/variant


Index: include/variant
===================================================================
--- include/variant
+++ include/variant
@@ -216,7 +216,7 @@

 class _LIBCPP_EXCEPTION_ABI bad_variant_access : public exception {
 public:
-  _LIBCPP_FUNC_VIS virtual const char* what() const _NOEXCEPT;
+  virtual const char* what() const _NOEXCEPT;
 };

 } // namespace std
Index: include/optional
===================================================================
--- include/optional
+++ include/optional
@@ -167,7 +167,6 @@
     bad_optional_access() : logic_error("bad optional access") {}

     // Get the key function ~bad_optional_access() into the dylib
-    _LIBCPP_FUNC_VIS
     virtual ~bad_optional_access() _NOEXCEPT;
 };



-------------- next part --------------
A non-text attachment was scrubbed...
Name: D28188.82749.patch
Type: text/x-patch
Size: 729 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161231/b430b68a/attachment.bin>


More information about the llvm-commits mailing list