diff options
author | Howard Hinnant <hhinnant@apple.com> | 2013-08-12 18:38:34 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2013-08-12 18:38:34 +0000 |
commit | f0544c2086a1a592e294f24d62973ce732af33da (patch) | |
tree | ada52136fb9bb9601fe9cbacc7cb7f9f37a90165 /libcxx/include/ext | |
parent | dafc7d9447d8e7d84233e6dcd39e573adbaf4450 (diff) | |
download | bcm5719-llvm-f0544c2086a1a592e294f24d62973ce732af33da.tar.gz bcm5719-llvm-f0544c2086a1a592e294f24d62973ce732af33da.zip |
Nico Rieck: this patch series fixes visibility issues on Windows as explained in <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-August/031214.html>.
llvm-svn: 188192
Diffstat (limited to 'libcxx/include/ext')
-rw-r--r-- | libcxx/include/ext/__hash | 6 | ||||
-rw-r--r-- | libcxx/include/ext/hash_map | 26 | ||||
-rw-r--r-- | libcxx/include/ext/hash_set | 4 |
3 files changed, 18 insertions, 18 deletions
diff --git a/libcxx/include/ext/__hash b/libcxx/include/ext/__hash index f6ecfe3605c..04975bfd052 100644 --- a/libcxx/include/ext/__hash +++ b/libcxx/include/ext/__hash @@ -19,10 +19,10 @@ namespace __gnu_cxx { using namespace std; -template <typename T> struct _LIBCPP_TYPE_VIS hash : public std::hash<T> +template <typename T> struct _LIBCPP_TYPE_VIS_ONLY hash : public std::hash<T> { }; -template <> struct _LIBCPP_TYPE_VIS hash<const char*> +template <> struct _LIBCPP_TYPE_VIS_ONLY hash<const char*> : public unary_function<const char*, size_t> { _LIBCPP_INLINE_VISIBILITY @@ -32,7 +32,7 @@ template <> struct _LIBCPP_TYPE_VIS hash<const char*> } }; -template <> struct _LIBCPP_TYPE_VIS hash<char *> +template <> struct _LIBCPP_TYPE_VIS_ONLY hash<char *> : public unary_function<char*, size_t> { _LIBCPP_INLINE_VISIBILITY diff --git a/libcxx/include/ext/hash_map b/libcxx/include/ext/hash_map index a6fe894e4d9..3e474b02e7d 100644 --- a/libcxx/include/ext/hash_map +++ b/libcxx/include/ext/hash_map @@ -361,7 +361,7 @@ public: }; template <class _HashIterator> -class _LIBCPP_TYPE_VIS __hash_map_iterator +class _LIBCPP_TYPE_VIS_ONLY __hash_map_iterator { _HashIterator __i_; @@ -404,15 +404,15 @@ public: bool operator!=(const __hash_map_iterator& __x, const __hash_map_iterator& __y) {return __x.__i_ != __y.__i_;} - template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS hash_map; - template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS hash_multimap; - template <class> friend class _LIBCPP_TYPE_VIS __hash_const_iterator; - template <class> friend class _LIBCPP_TYPE_VIS __hash_const_local_iterator; - template <class> friend class _LIBCPP_TYPE_VIS __hash_map_const_iterator; + template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS_ONLY hash_map; + template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS_ONLY hash_multimap; + template <class> friend class _LIBCPP_TYPE_VIS_ONLY __hash_const_iterator; + template <class> friend class _LIBCPP_TYPE_VIS_ONLY __hash_const_local_iterator; + template <class> friend class _LIBCPP_TYPE_VIS_ONLY __hash_map_const_iterator; }; template <class _HashIterator> -class _LIBCPP_TYPE_VIS __hash_map_const_iterator +class _LIBCPP_TYPE_VIS_ONLY __hash_map_const_iterator { _HashIterator __i_; @@ -463,15 +463,15 @@ public: bool operator!=(const __hash_map_const_iterator& __x, const __hash_map_const_iterator& __y) {return __x.__i_ != __y.__i_;} - template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS hash_map; - template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS hash_multimap; - template <class> friend class _LIBCPP_TYPE_VIS __hash_const_iterator; - template <class> friend class _LIBCPP_TYPE_VIS __hash_const_local_iterator; + template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS_ONLY hash_map; + template <class, class, class, class, class> friend class _LIBCPP_TYPE_VIS_ONLY hash_multimap; + template <class> friend class _LIBCPP_TYPE_VIS_ONLY __hash_const_iterator; + template <class> friend class _LIBCPP_TYPE_VIS_ONLY __hash_const_local_iterator; }; template <class _Key, class _Tp, class _Hash = hash<_Key>, class _Pred = equal_to<_Key>, class _Alloc = allocator<pair<const _Key, _Tp> > > -class _LIBCPP_TYPE_VIS hash_map +class _LIBCPP_TYPE_VIS_ONLY hash_map { public: // types @@ -750,7 +750,7 @@ operator!=(const hash_map<_Key, _Tp, _Hash, _Pred, _Alloc>& __x, template <class _Key, class _Tp, class _Hash = hash<_Key>, class _Pred = equal_to<_Key>, class _Alloc = allocator<pair<const _Key, _Tp> > > -class _LIBCPP_TYPE_VIS hash_multimap +class _LIBCPP_TYPE_VIS_ONLY hash_multimap { public: // types diff --git a/libcxx/include/ext/hash_set b/libcxx/include/ext/hash_set index 52bbeee13c3..deffcb61b06 100644 --- a/libcxx/include/ext/hash_set +++ b/libcxx/include/ext/hash_set @@ -208,7 +208,7 @@ using namespace std; template <class _Value, class _Hash = hash<_Value>, class _Pred = equal_to<_Value>, class _Alloc = allocator<_Value> > -class _LIBCPP_TYPE_VIS hash_set +class _LIBCPP_TYPE_VIS_ONLY hash_set { public: // types @@ -429,7 +429,7 @@ operator!=(const hash_set<_Value, _Hash, _Pred, _Alloc>& __x, template <class _Value, class _Hash = hash<_Value>, class _Pred = equal_to<_Value>, class _Alloc = allocator<_Value> > -class _LIBCPP_TYPE_VIS hash_multiset +class _LIBCPP_TYPE_VIS_ONLY hash_multiset { public: // types |