Skip to content

Commit eea1e70

Browse files
committed
Merge 2017-07 LWG Motion 32
2 parents 04617cb + f891ac2 commit eea1e70

File tree

3 files changed

+5
-86
lines changed

3 files changed

+5
-86
lines changed

source/iostreams.tex

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10259,9 +10259,8 @@
1025910259
path absolute(const path& p);
1026010260
path absolute(const path& p, error_code& ec);
1026110261

10262-
path canonical(const path& p, const path& base = current_path());
10262+
path canonical(const path& p);
1026310263
path canonical(const path& p, error_code& ec);
10264-
path canonical(const path& p, const path& base, error_code& ec);
1026510264

1026610265
void copy(const path& from, const path& to);
1026710266
void copy(const path& from, const path& to, error_code& ec) noexcept;
@@ -13781,9 +13780,8 @@
1378113780

1378213781
\indexlibrary{\idxcode{canonical}}%
1378313782
\begin{itemdecl}
13784-
path canonical(const path& p, const path& base = current_path());
13783+
path canonical(const path& p);
1378513784
path canonical(const path& p, error_code& ec);
13786-
path canonical(const path& p, const path& base, error_code& ec);
1378713785
\end{itemdecl}
1378813786

1378913787
\begin{itemdescr}
@@ -13794,9 +13792,8 @@
1379413792

1379513793
\pnum
1379613794
\returns A path that refers to
13797-
the same file system object as \tcode{absolute(p, base)}. For the overload
13798-
without a \tcode{base} argument, \tcode{base} is \tcode{current_path()}.
13799-
Signatures with argument \tcode{ec} return \tcode{path()} if an error occurs.
13795+
the same file system object as \tcode{absolute(p)}.
13796+
The signature with argument \tcode{ec} returns \tcode{path()} if an error occurs.
1380013797

1380113798
\pnum
1380213799
\throws As specified in~\ref{fs.err.report}.

source/utilities.tex

Lines changed: 0 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -4184,10 +4184,6 @@
41844184
template <class T> struct hash;
41854185
template <class... Types> struct hash<variant<Types...>>;
41864186
template <> struct hash<monostate>;
4187-
4188-
// \ref{variant.traits}, allocator-related traits
4189-
template <class T, class Alloc> struct uses_allocator;
4190-
template <class... Types, class Alloc> struct uses_allocator<variant<Types...>, Alloc>;
41914187
}
41924188
\end{codeblock}
41934189

@@ -4217,26 +4213,6 @@
42174213
template <size_t I, class U, class... Args>
42184214
constexpr explicit variant(in_place_index_t<I>, initializer_list<U>, Args&&...);
42194215

4220-
// allocator-extended constructors
4221-
template <class Alloc>
4222-
variant(allocator_arg_t, const Alloc&);
4223-
template <class Alloc>
4224-
variant(allocator_arg_t, const Alloc&, const variant&);
4225-
template <class Alloc>
4226-
variant(allocator_arg_t, const Alloc&, variant&&);
4227-
template <class Alloc, class T>
4228-
variant(allocator_arg_t, const Alloc&, T&&);
4229-
template <class Alloc, class T, class... Args>
4230-
variant(allocator_arg_t, const Alloc&, in_place_type_t<T>, Args&&...);
4231-
template <class Alloc, class T, class U, class... Args>
4232-
variant(allocator_arg_t, const Alloc&, in_place_type_t<T>,
4233-
initializer_list<U>, Args&&...);
4234-
template <class Alloc, size_t I, class... Args>
4235-
variant(allocator_arg_t, const Alloc&, in_place_index_t<I>, Args&&...);
4236-
template <class Alloc, size_t I, class U, class... Args>
4237-
variant(allocator_arg_t, const Alloc&, in_place_index_t<I>,
4238-
initializer_list<U>, Args&&...);
4239-
42404216
// \ref{variant.dtor}, destructor
42414217
~variant();
42424218

@@ -4548,40 +4524,6 @@
45484524
constructor shall be a constexpr constructor.
45494525
\end{itemdescr}
45504526

4551-
\indexlibrary{\idxcode{variant}!constructor}%
4552-
\begin{itemdecl}
4553-
// allocator-extended constructors
4554-
template <class Alloc>
4555-
variant(allocator_arg_t, const Alloc& a);
4556-
template <class Alloc>
4557-
variant(allocator_arg_t, const Alloc& a, const variant& v);
4558-
template <class Alloc>
4559-
variant(allocator_arg_t, const Alloc& a, variant&& v);
4560-
template <class Alloc, class T>
4561-
variant(allocator_arg_t, const Alloc& a, T&& t);
4562-
template <class Alloc, class T, class... Args>
4563-
variant(allocator_arg_t, const Alloc& a, in_place_type_t<T>, Args&&... args);
4564-
template <class Alloc, class T, class U, class... Args>
4565-
variant(allocator_arg_t, const Alloc& a, in_place_type_t<T>,
4566-
initializer_list<U> il, Args&&... args);
4567-
template <class Alloc, size_t I, class... Args>
4568-
variant(allocator_arg_t, const Alloc& a, in_place_index_t<I>, Args&&... args);
4569-
template <class Alloc, size_t I, class U, class... Args>
4570-
variant(allocator_arg_t, const Alloc& a, in_place_index_t<I>,
4571-
initializer_list<U> il, Args&&... args);
4572-
\end{itemdecl}
4573-
4574-
\begin{itemdescr}
4575-
\pnum
4576-
\requires
4577-
\tcode{Alloc} shall meet the requirements for an Allocator~(\ref{allocator.requirements}).
4578-
4579-
\pnum
4580-
\effects
4581-
Equivalent to the preceding constructors except that the contained value is
4582-
constructed with uses-allocator construction~(\ref{allocator.uses.construction}).
4583-
\end{itemdescr}
4584-
45854527
\rSec3[variant.dtor]{Destructor}
45864528

45874529
\indexlibrary{\idxcode{variant}!destructor}%
@@ -5419,27 +5361,6 @@
54195361
\end{itemdescr}
54205362

54215363

5422-
\rSec2[variant.traits]{Allocator-related traits}
5423-
5424-
\indexlibrary{\idxcode{uses_allocator}!\idxcode{variant}}%
5425-
\begin{itemdecl}
5426-
template <class... Types, class Alloc>
5427-
struct uses_allocator<variant<Types...>, Alloc> : true_type { };
5428-
\end{itemdecl}
5429-
5430-
\begin{itemdescr}
5431-
\pnum
5432-
\requires \tcode{Alloc} shall be an Allocator~(\ref{allocator.requirements}).
5433-
5434-
\pnum
5435-
\begin{note}
5436-
Specialization of this trait informs other library components
5437-
that variant can be constructed with an allocator,
5438-
even though it does not have a nested \tcode{allocator_type}.
5439-
\end{note}
5440-
\end{itemdescr}
5441-
5442-
54435364
\rSec1[any]{Storage for any type}
54445365

54455366
\pnum

source/xrefdelta.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
% Removed features.
1818
%\removedxref{removed.label}
19+
\removedxref{variant.traits}
1920

2021
% Renamed sections.
2122
%\movedxref{old.label}{new.label}

0 commit comments

Comments
 (0)