This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD Editorial status.

1233. Missing unique_ptr signatures in synopsis

Section: 20.2 [memory] Status: NAD Editorial Submitter: Daniel Krügler Opened: 2009-10-11 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [memory].

View all issues with NAD Editorial status.

Discussion:

Related to 296(i). Some unique_ptr signatures are missing from the synopsis in 20.2 [memory].

[ 2009-11-04 Howard adds: ]

Moved to Tentatively NAD Editorial. The editor has adopted the fix.

Proposed resolution:

Add in 20.2 [memory], Header <memory> synopsis missing declarations as shown below:

// 20.8.11 Class unique_ptr:
template <class X> class default_delete;
template<class T> struct default_delete<T[]>;
template <class X, class D = default_delete<T>> class unique_ptr;
template<class T, class D> class unique_ptr<T[], D>;

template<class T, class D> void swap(unique_ptr<T, D>& x, unique_ptr<T, D>& y);

template<class T1, class D1, class T2, class D2>
bool operator==(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
template<class T1, class D1, class T2, class D2>
bool operator!=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
template<class T1, class D1, class T2, class D2>
bool operator<(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
template<class T1, class D1, class T2, class D2>
bool operator<=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
template<class T1, class D1, class T2, class D2>
bool operator>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
template<class T1, class D1, class T2, class D2>
bool operator>=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);