diff options
Diffstat (limited to 'include/experimental')
30 files changed, 84 insertions, 271 deletions
diff --git a/include/experimental/__config b/include/experimental/__config index c6f177620224..375dc3743fcf 100644 --- a/include/experimental/__config +++ b/include/experimental/__config @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- __config ---------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// @@ -37,8 +36,14 @@ namespace chrono { namespace experimental { inline namespace fundamentals_v1 { #define _LIBCPP_END_NAMESPACE_CHRONO_LFTS _LIBCPP_END_NAMESPACE_STD } } } +#if defined(_LIBCPP_NO_EXPERIMENTAL_DEPRECATION_WARNING_FILESYSTEM) +# define _LIBCPP_DEPRECATED_EXPERIMENTAL_FILESYSTEM /* nothing */ +#else +# define _LIBCPP_DEPRECATED_EXPERIMENTAL_FILESYSTEM __attribute__((deprecated("std::experimental::filesystem has now been deprecated in favor of C++17's std::filesystem. Please stop using it and start using std::filesystem. This experimental version will be removed in LLVM 11. You can remove this warning by defining the _LIBCPP_NO_EXPERIMENTAL_DEPRECATION_WARNING_FILESYSTEM macro."))) +#endif + #define _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL_FILESYSTEM \ - _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL namespace filesystem { \ + _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL namespace filesystem _LIBCPP_DEPRECATED_EXPERIMENTAL_FILESYSTEM { \ inline namespace v1 { #define _LIBCPP_END_NAMESPACE_EXPERIMENTAL_FILESYSTEM \ diff --git a/include/experimental/__memory b/include/experimental/__memory index 229fea605bfd..4cf8978468ce 100644 --- a/include/experimental/__memory +++ b/include/experimental/__memory @@ -1,10 +1,9 @@ // -*- C++ -*- //===----------------------------------------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/algorithm b/include/experimental/algorithm index eb3bad6ef98c..79fd7b1b22de 100644 --- a/include/experimental/algorithm +++ b/include/experimental/algorithm @@ -1,10 +1,9 @@ // -*- C++ -*- //===-------------------------- algorithm ---------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/any b/include/experimental/any deleted file mode 100644 index d9c95342589f..000000000000 --- a/include/experimental/any +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===------------------------------- any ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_ANY -#define _LIBCPP_EXPERIMENTAL_ANY - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/any> has been removed. Use <any> instead.") -#else -# warning "<experimental/any> has been removed. Use <any> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_ANY diff --git a/include/experimental/chrono b/include/experimental/chrono deleted file mode 100644 index 30c7e4a9d5ac..000000000000 --- a/include/experimental/chrono +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===---------------------------- chrono ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_CHRONO -#define _LIBCPP_EXPERIMENTAL_CHRONO - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/chrono> has been removed. Use <chrono> instead.") -#else -# warning "<experimental/chrono> has been removed. Use <chrono> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_CHRONO diff --git a/include/experimental/coroutine b/include/experimental/coroutine index 7cb39b81b48f..e2f0a25f77ed 100644 --- a/include/experimental/coroutine +++ b/include/experimental/coroutine @@ -1,10 +1,9 @@ // -*- C++ -*- //===----------------------------- coroutine -----------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// @@ -82,7 +81,7 @@ struct __coroutine_traits_sfinae< }; template <typename _Ret, typename... _Args> -struct _LIBCPP_TEMPLATE_VIS coroutine_traits +struct coroutine_traits : public __coroutine_traits_sfinae<_Ret> { }; @@ -299,7 +298,7 @@ noop_coroutine_handle noop_coroutine() _NOEXCEPT { } #endif // __has_builtin(__builtin_coro_noop) -struct _LIBCPP_TYPE_VIS suspend_never { +struct suspend_never { _LIBCPP_INLINE_VISIBILITY bool await_ready() const _NOEXCEPT { return true; } _LIBCPP_INLINE_VISIBILITY @@ -308,7 +307,7 @@ struct _LIBCPP_TYPE_VIS suspend_never { void await_resume() const _NOEXCEPT {} }; -struct _LIBCPP_TYPE_VIS suspend_always { +struct suspend_always { _LIBCPP_INLINE_VISIBILITY bool await_ready() const _NOEXCEPT { return false; } _LIBCPP_INLINE_VISIBILITY diff --git a/include/experimental/deque b/include/experimental/deque index f8495743c1f9..73c2787c7a04 100644 --- a/include/experimental/deque +++ b/include/experimental/deque @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- deque ------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/filesystem b/include/experimental/filesystem index 28d8dcf4fc13..d2e6237df348 100644 --- a/include/experimental/filesystem +++ b/include/experimental/filesystem @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- filesystem -------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef _LIBCPP_EXPERIMENTAL_FILESYSTEM diff --git a/include/experimental/forward_list b/include/experimental/forward_list index 55e195f446f5..93f6debe9cb3 100644 --- a/include/experimental/forward_list +++ b/include/experimental/forward_list @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- forward_list -----------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/functional b/include/experimental/functional index f63dfb07bb06..755eda641556 100644 --- a/include/experimental/functional +++ b/include/experimental/functional @@ -1,10 +1,9 @@ // -*- C++ -*- //===-------------------------- functional --------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// @@ -110,8 +109,7 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS #if _LIBCPP_STD_VER > 11 // default searcher template<class _ForwardIterator, class _BinaryPredicate = equal_to<>> -_LIBCPP_TYPE_VIS -class default_searcher { +class _LIBCPP_TYPE_VIS default_searcher { public: _LIBCPP_INLINE_VISIBILITY default_searcher(_ForwardIterator __f, _ForwardIterator __l, @@ -209,8 +207,7 @@ public: template <class _RandomAccessIterator1, class _Hash = hash<typename iterator_traits<_RandomAccessIterator1>::value_type>, class _BinaryPredicate = equal_to<>> -_LIBCPP_TYPE_VIS -class boyer_moore_searcher { +class _LIBCPP_TYPE_VIS boyer_moore_searcher { private: typedef typename std::iterator_traits<_RandomAccessIterator1>::difference_type difference_type; typedef typename std::iterator_traits<_RandomAccessIterator1>::value_type value_type; @@ -361,8 +358,7 @@ make_boyer_moore_searcher( _RandomAccessIterator __f, _RandomAccessIterator __l, template <class _RandomAccessIterator1, class _Hash = hash<typename iterator_traits<_RandomAccessIterator1>::value_type>, class _BinaryPredicate = equal_to<>> -_LIBCPP_TYPE_VIS -class boyer_moore_horspool_searcher { +class _LIBCPP_TYPE_VIS boyer_moore_horspool_searcher { private: typedef typename std::iterator_traits<_RandomAccessIterator1>::difference_type difference_type; typedef typename std::iterator_traits<_RandomAccessIterator1>::value_type value_type; diff --git a/include/experimental/iterator b/include/experimental/iterator index ea672e966315..6a6e51d820d1 100644 --- a/include/experimental/iterator +++ b/include/experimental/iterator @@ -1,10 +1,9 @@ // -*- C++ -*- //===----------------------------- iterator -------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/list b/include/experimental/list index 1678ee3e93cb..adc64a8b537a 100644 --- a/include/experimental/list +++ b/include/experimental/list @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- list ------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/map b/include/experimental/map index cff2c5e52c0d..965d7582c9dd 100644 --- a/include/experimental/map +++ b/include/experimental/map @@ -1,10 +1,9 @@ // -*- C++ -*- //===----------------------------- map ------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/memory_resource b/include/experimental/memory_resource index 83781d462034..f999fb9befda 100644 --- a/include/experimental/memory_resource +++ b/include/experimental/memory_resource @@ -1,10 +1,9 @@ // -*- C++ -*- //===------------------------ memory_resource -----------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/numeric b/include/experimental/numeric deleted file mode 100644 index 19c65313f0f2..000000000000 --- a/include/experimental/numeric +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===--------------------------- numeric ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_NUMERIC -#define _LIBCPP_EXPERIMENTAL_NUMERIC - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/numeric> has been removed. Use <numeric> instead.") -#else -# warning "<experimental/numeric> has been removed. Use <numeric> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_NUMERIC diff --git a/include/experimental/optional b/include/experimental/optional deleted file mode 100644 index 6eb4a2618d2c..000000000000 --- a/include/experimental/optional +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===-------------------------- optional ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_OPTIONAL -#define _LIBCPP_EXPERIMENTAL_OPTIONAL - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/optional> has been removed. Use <optional> instead.") -#else -# warning "<experimental/optional> has been removed. Use <optional> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_OPTIONAL diff --git a/include/experimental/propagate_const b/include/experimental/propagate_const index 188548596b84..092b013bb904 100644 --- a/include/experimental/propagate_const +++ b/include/experimental/propagate_const @@ -1,10 +1,9 @@ // -*- C++ -*- //===------------------------ propagate_const -----------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/ratio b/include/experimental/ratio deleted file mode 100644 index 52c12004dba0..000000000000 --- a/include/experimental/ratio +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===----------------------------- ratio ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_RATIO -#define _LIBCPP_EXPERIMENTAL_RATIO - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/ratio> has been removed. Use <ratio> instead.") -#else -# warning "<experimental/ratio> has been removed. Use <ratio> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_RATIO diff --git a/include/experimental/regex b/include/experimental/regex index d38891c374bb..17193cf2f6f6 100644 --- a/include/experimental/regex +++ b/include/experimental/regex @@ -1,10 +1,9 @@ // -*- C++ -*- //===----------------------------- regex ----------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/set b/include/experimental/set index 20cf6d4a3890..52f4df384278 100644 --- a/include/experimental/set +++ b/include/experimental/set @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- list ------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/simd b/include/experimental/simd index 6580443f7b03..39ac35e4eb0a 100644 --- a/include/experimental/simd +++ b/include/experimental/simd @@ -1,10 +1,9 @@ // -*- C++ -*- //===------------------------------- simd ---------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef _LIBCPP_EXPERIMENTAL_SIMD diff --git a/include/experimental/string b/include/experimental/string index 8b8545128f2a..264ff9236822 100644 --- a/include/experimental/string +++ b/include/experimental/string @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- string ----------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/string_view b/include/experimental/string_view deleted file mode 100644 index 100bdfe72735..000000000000 --- a/include/experimental/string_view +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===------------------------ string_view ---------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_STRING_VIEW -#define _LIBCPP_EXPERIMENTAL_STRING_VIEW - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/string_view> has been removed. Use <string_view> instead.") -#else -# warning "<experimental/string_view> has been removed. Use <string_view> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_STRING_VIEW diff --git a/include/experimental/system_error b/include/experimental/system_error deleted file mode 100644 index 1cf84ee01251..000000000000 --- a/include/experimental/system_error +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===-------------------------- system_error ------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR -#define _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/system_error> has been removed. Use <system_error> instead.") -#else -# warning "<experimental/system_error> has been removed. Use <system_error> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR diff --git a/include/experimental/tuple b/include/experimental/tuple deleted file mode 100644 index 6d71bb559b02..000000000000 --- a/include/experimental/tuple +++ /dev/null @@ -1,21 +0,0 @@ -// -*- C++ -*- -//===----------------------------- tuple ----------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -#ifndef _LIBCPP_EXPERIMENTAL_TUPLE -#define _LIBCPP_EXPERIMENTAL_TUPLE - -#include <__config> - -#ifdef _LIBCPP_WARNING -_LIBCPP_WARNING("<experimental/tuple> has been removed. Use <tuple> instead.") -#else -# warning "<experimental/tuple> has been removed. Use <tuple> instead." -#endif - -#endif // _LIBCPP_EXPERIMENTAL_TUPLE diff --git a/include/experimental/type_traits b/include/experimental/type_traits index afe491567cec..19466e9a5a5d 100644 --- a/include/experimental/type_traits +++ b/include/experimental/type_traits @@ -1,10 +1,9 @@ // -*- C++ -*- //===-------------------------- type_traits -------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// @@ -73,6 +72,7 @@ inline namespace fundamentals_v1 { #if _LIBCPP_STD_VER > 11 +#include <initializer_list> #include <type_traits> #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) @@ -105,11 +105,10 @@ using raw_invocation_type_t = typename raw_invocation_type<_Tp>::type; // 3.3.4, Detection idiom template <class...> using void_t = void; -struct nonesuch { - nonesuch() = delete; - ~nonesuch() = delete; - nonesuch (nonesuch const&) = delete; - void operator=(nonesuch const&) = delete; +struct nonesuch : private _VSTD::__nat { // make nonesuch "not an aggregate" + ~nonesuch() = delete; + nonesuch (nonesuch const&) = delete; + void operator=(nonesuch const&) = delete; }; template <class _Default, class _AlwaysVoid, template <class...> class _Op, class... _Args> diff --git a/include/experimental/unordered_map b/include/experimental/unordered_map index 1f998c2d4c7e..eca9cea793a4 100644 --- a/include/experimental/unordered_map +++ b/include/experimental/unordered_map @@ -1,10 +1,9 @@ // -*- C++ -*- //===------------------------- unordered_map ------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/unordered_set b/include/experimental/unordered_set index d00a83753401..323868f785a5 100644 --- a/include/experimental/unordered_set +++ b/include/experimental/unordered_set @@ -1,10 +1,9 @@ // -*- C++ -*- //===------------------------- unordered_set ------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/utility b/include/experimental/utility index 8effa71c1316..0bca0f7c9c46 100644 --- a/include/experimental/utility +++ b/include/experimental/utility @@ -1,10 +1,9 @@ // -*- C++ -*- //===-------------------------- utility ----------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// diff --git a/include/experimental/vector b/include/experimental/vector index bd10492bfefc..9b810120695a 100644 --- a/include/experimental/vector +++ b/include/experimental/vector @@ -1,10 +1,9 @@ // -*- C++ -*- //===--------------------------- vector ------------------------------------===// // -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// |