Skip to content

Commit 9620e6d

Browse files
burblebeetkoeppe
authored andcommitted
LWG3990 Program-defined specializations of std::tuple and std::variant can't be properly supported
Editorial note: a new subclause [tuple.tuple.general] has been added to avoid hanging paragraphs.
1 parent 0d20465 commit 9620e6d

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

source/utilities.tex

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1615,8 +1615,10 @@
16151615
\end{itemdescr}
16161616

16171617
\rSec2[tuple.tuple]{Class template \tcode{tuple}}
1618-
\indexlibraryglobal{tuple}%
16191618

1619+
\rSec3[tuple.tuple.general]{General}
1620+
1621+
\indexlibraryglobal{tuple}%
16201622
\begin{codeblock}
16211623
namespace std {
16221624
template<class... Types>
@@ -1742,6 +1744,10 @@
17421744
}
17431745
\end{codeblock}
17441746

1747+
\pnum
1748+
If a program declares an explicit or partial specialization of \tcode{tuple},
1749+
the program is ill-formed, no diagnostic required.
1750+
17451751
\rSec3[tuple.cnstr]{Construction}
17461752

17471753
\pnum
@@ -5051,6 +5057,10 @@
50515057
A program that instantiates the definition of \tcode{variant} with
50525058
no template arguments is ill-formed.
50535059

5060+
\pnum
5061+
If a program declares an explicit or partial specialization of \tcode{variant},
5062+
the program is ill-formed, no diagnostic required.
5063+
50545064
\rSec3[variant.ctor]{Constructors}
50555065

50565066
\pnum

0 commit comments

Comments
 (0)