This commit is contained in:
Stephan T. Lavavej 2023-03-07 11:35:08 -08:00 коммит произвёл GitHub
Родитель 326473d595
Коммит 14357520a5
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
5 изменённых файлов: 20 добавлений и 36 удалений

Просмотреть файл

@ -29,7 +29,7 @@ public:
#pragma warning(pop) #pragma warning(pop)
class reference { // proxy for an element class reference { // proxy for an element
friend bitset<_Bits>; friend bitset;
public: public:
_CONSTEXPR23 reference(const reference&) = default; _CONSTEXPR23 reference(const reference&) = default;

Просмотреть файл

@ -135,6 +135,8 @@ protected:
} }
}; };
class bad_array_new_length;
class bad_alloc : public exception { // base of all bad allocation exceptions class bad_alloc : public exception { // base of all bad allocation exceptions
public: public:
__CLR_OR_THIS_CALL bad_alloc() noexcept __CLR_OR_THIS_CALL bad_alloc() noexcept
@ -143,7 +145,7 @@ public:
__CLR_OR_THIS_CALL ~bad_alloc() noexcept override {} __CLR_OR_THIS_CALL ~bad_alloc() noexcept override {}
private: private:
friend class bad_array_new_length; friend bad_array_new_length;
__CLR_OR_THIS_CALL bad_alloc(const char* _Message) noexcept __CLR_OR_THIS_CALL bad_alloc(const char* _Message) noexcept
: exception(_Message, 1) {} // construct from message string with no memory allocation : exception(_Message, 1) {} // construct from message string with no memory allocation

Просмотреть файл

@ -2080,6 +2080,9 @@ namespace filesystem {
using file_time_type = _CHRONO time_point<filesystem::_File_time_clock>; using file_time_type = _CHRONO time_point<filesystem::_File_time_clock>;
#endif // ^^^ !_HAS_CXX20 #endif // ^^^ !_HAS_CXX20
struct _Dir_enum_impl;
struct _Recursive_dir_enum_impl;
_EXPORT_STD class directory_entry { _EXPORT_STD class directory_entry {
public: public:
// [fs.dir.entry.cons], constructors and destructor // [fs.dir.entry.cons], constructors and destructor
@ -2472,8 +2475,8 @@ namespace filesystem {
return _Error; return _Error;
} }
friend struct _Dir_enum_impl; friend _Dir_enum_impl;
friend struct _Recursive_dir_enum_impl; friend _Recursive_dir_enum_impl;
friend void _Copy_impl( friend void _Copy_impl(
const directory_entry& _From, const _STD filesystem::path& _To, copy_options _Options, error_code& _Ec); const directory_entry& _From, const _STD filesystem::path& _To, copy_options _Options, error_code& _Ec);

Просмотреть файл

@ -2330,9 +2330,6 @@ namespace ranges {
/* [[no_unique_address]] */ _Vw _Range{}; /* [[no_unique_address]] */ _Vw _Range{};
/* [[no_unique_address]] */ _Movable_box<_Fn> _Fun{}; /* [[no_unique_address]] */ _Movable_box<_Fn> _Fun{};
template <bool _Const>
class _Sentinel;
template <bool _Const> template <bool _Const>
struct _Category_base {}; struct _Category_base {};
@ -2350,10 +2347,7 @@ namespace ranges {
template <bool _Const> template <bool _Const>
class _Iterator : public _Category_base<_Const> { class _Iterator : public _Category_base<_Const> {
private: private:
template <bool> friend transform_view;
friend class _Iterator;
template <bool>
friend class _Sentinel;
using _Parent_t = _Maybe_const<_Const, transform_view>; using _Parent_t = _Maybe_const<_Const, transform_view>;
using _Base = _Maybe_const<_Const, _Vw>; using _Base = _Maybe_const<_Const, _Vw>;
@ -2603,8 +2597,7 @@ namespace ranges {
template <bool _Const> template <bool _Const>
class _Sentinel { class _Sentinel {
private: private:
template <bool> friend transform_view;
friend class _Sentinel;
using _Parent_t = _Maybe_const<_Const, transform_view>; using _Parent_t = _Maybe_const<_Const, transform_view>;
using _Base = _Maybe_const<_Const, _Vw>; using _Base = _Maybe_const<_Const, _Vw>;
@ -2776,8 +2769,7 @@ namespace ranges {
template <bool _Const, bool _Wrapped = true> template <bool _Const, bool _Wrapped = true>
class _Sentinel { class _Sentinel {
private: private:
template <bool, bool> friend take_view;
friend class _Sentinel;
using _Base_t = _Maybe_const<_Const, _Vw>; using _Base_t = _Maybe_const<_Const, _Vw>;
using _Base_sentinel = _Maybe_wrapped<_Wrapped, sentinel_t<_Base_t>>; using _Base_sentinel = _Maybe_wrapped<_Wrapped, sentinel_t<_Base_t>>;
@ -3070,8 +3062,7 @@ namespace ranges {
template <bool _Const, bool _Wrapped = true> template <bool _Const, bool _Wrapped = true>
class _Sentinel { class _Sentinel {
private: private:
template <bool, bool> friend take_while_view;
friend class _Sentinel;
using _Base_t = _Maybe_const<_Const, _Vw>; using _Base_t = _Maybe_const<_Const, _Vw>;
using _Base_iterator = _Maybe_wrapped<_Wrapped, iterator_t<_Base_t>>; using _Base_iterator = _Maybe_wrapped<_Wrapped, iterator_t<_Base_t>>;
@ -4562,9 +4553,7 @@ namespace ranges {
template <bool _Const> template <bool _Const>
class _Outer_iter : public _Outer_iter_base<iterator_t<_Maybe_const<_Const, _Vw>>> { class _Outer_iter : public _Outer_iter_base<iterator_t<_Maybe_const<_Const, _Vw>>> {
private: private:
template <bool> friend lazy_split_view;
friend class _Inner_iter;
friend _Outer_iter<true>;
using _Mybase = _Outer_iter_base<iterator_t<_Maybe_const<_Const, _Vw>>>; using _Mybase = _Outer_iter_base<iterator_t<_Maybe_const<_Const, _Vw>>>;
using _ParentTy = _Maybe_const<_Const, lazy_split_view>; using _ParentTy = _Maybe_const<_Const, lazy_split_view>;
@ -4934,11 +4923,9 @@ namespace ranges {
/* [[no_unique_address]] */ _Pat _Pattern{}; /* [[no_unique_address]] */ _Pat _Pattern{};
_Non_propagating_cache<subrange<iterator_t<_Vw>>> _Next{}; _Non_propagating_cache<subrange<iterator_t<_Vw>>> _Next{};
class _Sentinel;
class _Iterator { class _Iterator {
private: private:
friend _Sentinel; friend split_view;
split_view* _Parent = nullptr; split_view* _Parent = nullptr;
iterator_t<_Vw> _Current = {}; iterator_t<_Vw> _Current = {};
@ -5601,9 +5588,6 @@ namespace ranges {
private: private:
/* [[no_unique_address]] */ _Vw _Range{}; /* [[no_unique_address]] */ _Vw _Range{};
template <bool _Const>
class _Sentinel;
template <class _Base> template <class _Base>
struct _Category_base {}; struct _Category_base {};
@ -5619,10 +5603,7 @@ namespace ranges {
template <bool _Const> template <bool _Const>
class _Iterator : public _Category_base<_Maybe_const<_Const, _Vw>> { class _Iterator : public _Category_base<_Maybe_const<_Const, _Vw>> {
private: private:
template <bool> friend elements_view;
friend class _Iterator;
template <bool>
friend class _Sentinel;
using _Base = _Maybe_const<_Const, _Vw>; using _Base = _Maybe_const<_Const, _Vw>;
@ -5850,8 +5831,7 @@ namespace ranges {
template <bool _Const> template <bool _Const>
class _Sentinel { class _Sentinel {
private: private:
template <bool> friend elements_view;
friend class _Sentinel;
using _Base = _Maybe_const<_Const, _Vw>; using _Base = _Maybe_const<_Const, _Vw>;
template <bool _OtherConst> template <bool _OtherConst>
@ -6359,10 +6339,9 @@ namespace ranges {
range_difference_t<_Vw> _Remainder = 0; range_difference_t<_Vw> _Remainder = 0;
_Non_propagating_cache<iterator_t<_Vw>> _Current{}; _Non_propagating_cache<iterator_t<_Vw>> _Current{};
class _Outer_iterator;
class _Inner_iterator { class _Inner_iterator {
private: private:
friend struct _Outer_iterator::value_type; friend chunk_view;
chunk_view* _Parent{}; chunk_view* _Parent{};
constexpr explicit _Inner_iterator(chunk_view* _Parent_) noexcept : _Parent(_Parent_) {} constexpr explicit _Inner_iterator(chunk_view* _Parent_) noexcept : _Parent(_Parent_) {}

Просмотреть файл

@ -115,12 +115,12 @@ public:
__PURE_APPDOMAIN_GLOBAL static int _Id_cnt; __PURE_APPDOMAIN_GLOBAL static int _Id_cnt;
}; };
class _Locimp; struct _Facet_guard;
class _CRTIMP2_PURE_IMPORT facet : public _Facet_base, public _Crt_new_delete { class _CRTIMP2_PURE_IMPORT facet : public _Facet_base, public _Crt_new_delete {
// base class for all locale facets, performs reference counting // base class for all locale facets, performs reference counting
private: private:
friend struct _Facet_guard; friend _Facet_guard;
public: public:
static size_t __CLRCALL_OR_CDECL _Getcat(const facet** = nullptr, const locale* = nullptr) { static size_t __CLRCALL_OR_CDECL _Getcat(const facet** = nullptr, const locale* = nullptr) {