Skip to content

[lib] Harmonize italics correction after \placeholder #3138

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
965 changes: 965 additions & 0 deletions papers/n4827.html

Large diffs are not rendered by default.

827 changes: 827 additions & 0 deletions papers/n4827.md

Large diffs are not rendered by default.

Binary file added papers/n4828.pdf
Binary file not shown.
10 changes: 5 additions & 5 deletions source/atomics.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1344,7 +1344,7 @@

\begin{itemdescr}
\effects Equivalent to:
\tcode{return fetch_\placeholder{key}(operand) \placeholdernc{op} operand;}
\tcode{return fetch_\placeholdernc{key}(operand) \placeholdernc{op} operand;}
\end{itemdescr}

\rSec2[atomics.ref.pointer]{Partial specialization for pointers}
Expand Down Expand Up @@ -1444,7 +1444,7 @@
\begin{itemdescr}
\pnum
\effects Equivalent to:
\tcode{return fetch_\placeholder{key}(operand) \placeholdernc{op} operand;}
\tcode{return fetch_\placeholdernc{key}(operand) \placeholdernc{op} operand;}
\end{itemdescr}

\rSec2[atomics.ref.memop]{Member operators
Expand Down Expand Up @@ -2213,7 +2213,7 @@

\begin{itemdescr}
\pnum
\effects Equivalent to: \tcode{return fetch_\placeholder{key}(operand) \placeholder{op} operand;}
\effects Equivalent to: \tcode{return fetch_\placeholdernc{key}(operand) \placeholder{op} operand;}
\end{itemdescr}

\rSec2[atomics.types.float]{Specializations for floating-point types}
Expand Down Expand Up @@ -2358,7 +2358,7 @@
\begin{itemdescr}
\pnum
\effects
Equivalent to: \tcode{return fetch_\placeholder{key}(operand) \placeholder{op} operand;}
Equivalent to: \tcode{return fetch_\placeholdernc{key}(operand) \placeholder{op} operand;}

\pnum
\remarks
Expand Down Expand Up @@ -2510,7 +2510,7 @@

\begin{itemdescr}
\pnum
\effects Equivalent to: \tcode{return fetch_\placeholder{key}(operand) \placeholder{op} operand;}
\effects Equivalent to: \tcode{return fetch_\placeholdernc{key}(operand) \placeholder{op} operand;}
\end{itemdescr}

\rSec2[atomics.types.memop]{Member operators common to integers and pointers to objects}
Expand Down
2 changes: 1 addition & 1 deletion source/concepts.tex
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@
concept @\placeholdernc{same-as-impl}@ = is_same_v<T, U>; // \expos

template<class T, class U>
concept same_as = @\placeholdernc{same-as-impl}@<T, U> && @\placeholdernc{same-as-impl}@<U, T>;
concept same_as = @\placeholder{same-as-impl}@<T, U> && @\placeholder{same-as-impl}@<U, T>;
\end{itemdecl}

\begin{itemdescr}
Expand Down
2 changes: 1 addition & 1 deletion source/config.tex
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
%!TEX root = std.tex
%%--------------------------------------------------
%% Version numbers
\newcommand{\docno}{Dxxxx}
\newcommand{\docno}{N4828}
\newcommand{\prevdocno}{N4820}
\newcommand{\cppver}{201703L}

Expand Down
8 changes: 4 additions & 4 deletions source/containers.tex
Original file line number Diff line number Diff line change
Expand Up @@ -6251,7 +6251,7 @@
using reverse_iterator = std::reverse_iterator<iterator>;
using const_reverse_iterator = std::reverse_iterator<const_iterator>;
using node_type = @\unspec@;
using insert_return_type = @\placeholdernc{insert-return-type}@<iterator, node_type>;
using insert_return_type = @\placeholder{insert-return-type}@<iterator, node_type>;

class value_compare {
friend class map;
Expand Down Expand Up @@ -7116,7 +7116,7 @@
using reverse_iterator = std::reverse_iterator<iterator>;
using const_reverse_iterator = std::reverse_iterator<const_iterator>;
using node_type = @\unspec@;
using insert_return_type = @\placeholdernc{insert-return-type}@<iterator, node_type>;
using insert_return_type = @\placeholder{insert-return-type}@<iterator, node_type>;

// \ref{set.cons}, construct/copy/destroy
set() : set(Compare()) { }
Expand Down Expand Up @@ -7802,7 +7802,7 @@
using local_iterator = @\impdefx{type of \tcode{unordered_map::local_iterator}}@; // see \ref{container.requirements}
using const_local_iterator = @\impdefx{type of \tcode{unordered_map::const_local_iterator}}@; // see \ref{container.requirements}
using node_type = @\unspec@;
using insert_return_type = @\placeholdernc{insert-return-type}@<iterator, node_type>;
using insert_return_type = @\placeholder{insert-return-type}@<iterator, node_type>;

// \ref{unord.map.cnstr}, construct/copy/destroy
unordered_map();
Expand Down Expand Up @@ -8754,7 +8754,7 @@
using local_iterator = @\impdefx{type of \tcode{unordered_set::local_iterator}}@; // see \ref{container.requirements}
using const_local_iterator = @\impdefx{type of \tcode{unordered_set::const_local_iterator}}@; // see \ref{container.requirements}
using node_type = @\unspec@;
using insert_return_type = @\placeholdernc{insert-return-type}@<iterator, node_type>;
using insert_return_type = @\placeholder{insert-return-type}@<iterator, node_type>;

// \ref{unord.set.cnstr}, construct/copy/destroy
unordered_set();
Expand Down
16 changes: 8 additions & 8 deletions source/iterators.tex
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
namespace std {
template<class T> using @\placeholder{with-reference}@ = T&; // \expos
template<class T> concept @\placeholder{can-reference}@ // \expos
= requires { typename @\placeholdernc{with-reference}@<T>; };
= requires { typename @\placeholder{with-reference}@<T>; };
template<class T> concept @\placeholder{dereferenceable}@ // \expos
= requires(T& t) {
{ *t } -> @\placeholder{can-reference}@; // not required to be equality-preserving
Expand Down Expand Up @@ -1293,7 +1293,7 @@
default_constructible<I> && movable<I> &&
requires(I i) {
typename iter_difference_t<I>;
requires @\placeholdernc{is-signed-integer-like}@<iter_difference_t<I>>;
requires @\placeholder{is-signed-integer-like}@<iter_difference_t<I>>;
{ ++i } -> same_as<I&>; // not required to be equality-preserving
i++; // not required to be equality-preserving
};
Expand Down Expand Up @@ -1397,9 +1397,9 @@
if it is an unsigned-integer-class type.

\pnum
\tcode{\placeholdernc{is-integer-like}<I>} is \tcode{true}
\tcode{\placeholder{is-integer-like}<I>} is \tcode{true}
if and only if \tcode{I} is an integer-like type.
\tcode{\placeholdernc{is-signed-integer-like}<I>} is \tcode{true}
\tcode{\placeholder{is-signed-integer-like}<I>} is \tcode{true}
if and only if I is a signed-integer-like type.

\pnum
Expand Down Expand Up @@ -4869,12 +4869,12 @@

\item
Otherwise, equivalent to:
\tcode{return \placeholder{proxy}(*get<I>(v_));} where
\tcode{return \placeholdernc{proxy}(*get<I>(v_));} where
\tcode{\placeholder{proxy}} is the exposition-only class:
\begin{codeblock}
class @\placeholder{proxy}@ {
iter_value_t<I> keep_;
@\placeholder{proxy}@(iter_reference_t<I>&& x)
@\placeholdernc{proxy}@(iter_reference_t<I>&& x)
: keep_(std::move(x)) {}
public:
const iter_value_t<I>* operator->() const {
Expand Down Expand Up @@ -6035,7 +6035,7 @@
class istreambuf_iterator<charT, traits>::@\placeholder{proxy}@ { // \expos
charT keep_;
basic_streambuf<charT,traits>* sbuf_;
@\placeholder{proxy}@(charT c, basic_streambuf<charT,traits>* sbuf)
@\placeholdernc{proxy}@(charT c, basic_streambuf<charT,traits>* sbuf)
: keep_(c), sbuf_(sbuf) { }
public:
charT operator*() { return keep_; }
Expand Down Expand Up @@ -6138,7 +6138,7 @@
\begin{itemdescr}
\pnum
\returns
\tcode{\placeholder{proxy}(sbuf_->sbumpc(), sbuf_)}.
\tcode{\placeholdernc{proxy}(sbuf_->sbumpc(), sbuf_)}.
\end{itemdescr}

\indexlibrarymember{equal}{istreambuf_iterator}%
Expand Down
12 changes: 6 additions & 6 deletions source/lex.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1844,7 +1844,7 @@
the form

\begin{codeblock}
operator "" @\placeholder{X}@(@\placeholder{n}@ULL)
operator "" @\placeholdernc{X}@(@\placeholder{n}@ULL)
\end{codeblock}

Otherwise, \placeholder{S} shall contain a raw literal operator
Expand All @@ -1853,7 +1853,7 @@
the literal \placeholder{L} is treated as a call of the form

\begin{codeblock}
operator "" @\placeholder{X}@(@"\placeholder{n}{"}@)
operator "" @\placeholdernc{X}@(@"\placeholder{n}{"}@)
\end{codeblock}

Otherwise (\placeholder{S} contains a numeric literal operator template),
Expand All @@ -1874,7 +1874,7 @@
the form

\begin{codeblock}
operator "" @\placeholder{X}@(@\placeholder{f}@L)
operator "" @\placeholdernc{X}@(@\placeholder{f}@L)
\end{codeblock}

Otherwise, \placeholder{S} shall contain a raw literal operator
Expand All @@ -1883,7 +1883,7 @@
the \grammarterm{literal} \placeholder{L} is treated as a call of the form

\begin{codeblock}
operator "" @\placeholder{X}@(@"\placeholder{f}{"}@)
operator "" @\placeholdernc{X}@(@"\placeholder{f}{"}@)
\end{codeblock}

Otherwise (\placeholder{S} contains a numeric literal operator template),
Expand Down Expand Up @@ -1914,7 +1914,7 @@
Otherwise, the literal \placeholder{L} is treated as a call of the form

\begin{codeblock}
operator "" @\placeholder{X}@(@\placeholder{str}{}@, @\placeholder{len}{}@)
operator "" @\placeholdernc{X}@(@\placeholder{str}{}@, @\placeholder{len}{}@)
\end{codeblock}

\pnum
Expand All @@ -1926,7 +1926,7 @@
of the form

\begin{codeblock}
operator "" @\placeholder{X}@(@\placeholder{ch}{}@)
operator "" @\placeholdernc{X}@(@\placeholder{ch}{}@)
\end{codeblock}

\pnum
Expand Down
2 changes: 1 addition & 1 deletion source/locales.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4712,7 +4712,7 @@
Each of these functions \tcode{\placeholder{F}}
returns the result of calling the corresponding
virtual member function
\tcode{do_\placeholder{F}()}.
\tcode{do_\placeholdernc{F}()}.

\rSec4[locale.moneypunct.virtuals]{Virtual functions}

Expand Down
8 changes: 4 additions & 4 deletions source/numerics.tex
Original file line number Diff line number Diff line change
Expand Up @@ -9626,12 +9626,12 @@
\item If \tcode{isfinite(t) \&\& a == b}, then \tcode{r == a}.
\item If \tcode{isfinite(t) || !isnan(t) \&\& b-a != 0}, then \tcode{!isnan(r)}.
\end{itemize}
Let \tcode{\placeholder{CMP}(x,y)} be \tcode{1} if \tcode{x > y},
Let \tcode{\placeholdernc{CMP}(x,y)} be \tcode{1} if \tcode{x > y},
\tcode{-1} if \tcode{x < y}, and \tcode{0} otherwise.
For any \tcode{t1} and \tcode{t2}, the product of
\tcode{\placeholder{CMP}(lerp(a, b, t2), lerp(a, b, t1))},
\tcode{\placeholder{CMP}(t2, t1)}, and
\tcode{\placeholder{CMP}(b, a)}
\tcode{\placeholdernc{CMP}(lerp(a, b, t2), lerp(a, b, t1))},
\tcode{\placeholdernc{CMP}(t2, t1)}, and
\tcode{\placeholdernc{CMP}(b, a)}
is non-negative.
\end{itemdescr}

Expand Down
Loading