12712
12712
\begin{codeblock}
12713
12713
namespace std {
12714
12714
// \ref{func.invoke}, invoke
12715
- template <class F, class... Args> result_of_t<F&&(Args&&...)> invoke(F&& f, Args&&... args);
12715
+ template <class F, class... Args>
12716
+ result_of_t<F&&(Args&&...)> invoke(F&& f, Args&&... args);
12716
12717
12717
12718
// \ref{refwrap}, reference_wrapper
12718
12719
template <class T> class reference_wrapper;
12772
12773
template <> struct bit_not<void>;
12773
12774
12774
12775
// \ref{func.not_fn}, function template \tcode{not_fn}
12775
- template <class F> @\unspec@ not_fn(F&& f);
12776
+ template <class F>
12777
+ @\unspec@ not_fn(F&& f);
12776
12778
12777
12779
// \ref{func.bind}, bind
12778
12780
template<class T> struct is_bind_expression;
@@ -12784,17 +12786,18 @@
12784
12786
@\unspec@ bind(F&&, BoundArgs&&...);
12785
12787
12786
12788
namespace placeholders {
12787
- // M is the \impldef{number of placeholders for bind expressions} number of placeholders
12788
- @\seebelow @ _1;
12789
- @\seebelow @ _2;
12790
- .
12791
- .
12792
- .
12793
- @\seebelow@ _M ;
12789
+ // \tcode{\placeholder{M}} is the \impldef{number of placeholders for bind expressions} number of placeholders
12790
+ @\seebelownc @ _1;
12791
+ @\seebelownc @ _2;
12792
+ .
12793
+ .
12794
+ .
12795
+ @\seebelownc@ _@\placeholdernc{M}@ ;
12794
12796
}
12795
12797
12796
12798
// \ref{func.memfn}, member function adaptors
12797
- template<class R, class T> @\unspec@ mem_fn(R T::*) noexcept;
12799
+ template<class R, class T>
12800
+ @\unspec@ mem_fn(R T::*) noexcept;
12798
12801
12799
12802
// \ref{func.wrap}, polymorphic function wrappers
12800
12803
class bad_function_call;
@@ -14069,12 +14072,12 @@
14069
14072
Instantiations of the \tcode{is_placeholder} template shall meet
14070
14073
the \tcode{UnaryTypeTrait} requirements~(\ref{meta.rqmts}). The implementation
14071
14074
shall provide a definition that has the base characteristic of
14072
- \tcode{integral_constant<int, J >} if \tcode{T} is the type of
14073
- \tcode{std::placeholders::_J }, otherwise it shall have a
14075
+ \tcode{integral_constant<int, \placeholder{J} >} if \tcode{T} is the type of
14076
+ \tcode{std::placeholders::_\placeholder{J} }, otherwise it shall have a
14074
14077
base characteristic of \tcode{integral_constant<int, 0>}. A program
14075
14078
may specialize this template for a user-defined type \tcode{T} to
14076
- have a base characteristic of \tcode{integral_constant<int, \textit{N} >}
14077
- with \tcode{\textit{N} > 0} to indicate that \tcode{T} should be
14079
+ have a base characteristic of \tcode{integral_constant<int, N >}
14080
+ with \tcode{N > 0} to indicate that \tcode{T} should be
14078
14081
treated as a placeholder type.
14079
14082
14080
14083
\rSec3[func.bind.bind]{Function template \tcode{bind}}
0 commit comments