<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<TITLE>
    CWG Issue 1744</TITLE>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<STYLE TYPE="text/css">
  INS { text-decoration:none; font-weight:bold; background-color:#A0FFA0 }
  .INS { text-decoration:none; background-color:#D0FFD0 }
  DEL { text-decoration:line-through; background-color:#FFA0A0 }
  .DEL { text-decoration:line-through; background-color: #FFD0D0 }
  @media (prefers-color-scheme: dark) {
    HTML { background-color:#202020; color:#f0f0f0; }
    A { color:#5bc0ff; }
    A:visited { color:#c6a8ff; }
    A:hover, a:focus { color:#afd7ff; }
    INS { background-color:#033a16; color:#aff5b4; }
    .INS { background-color: #033a16; }
    DEL { background-color:#67060c; color:#ffdcd7; }
    .DEL { background-color:#67060c; }
  }
  SPAN.cmnt { font-family:Times; font-style:italic }
</STYLE>
</HEAD>
<BODY>
<P><EM>This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21
  Core Issues List revision 118b.
  See http://www.open-std.org/jtc1/sc22/wg21/ for the official
  list.</EM></P>
<P>2025-09-28</P>
<HR>
<A NAME="1744"></A><H4>1744.
  
Unordered initialization for variable template specializations
</H4>
<B>Section: </B>6.10.3.2&#160; [<A href="https://wg21.link/basic.start.static">basic.start.static</A>]
 &#160;&#160;&#160;

 <B>Status: </B>CD4
 &#160;&#160;&#160;

 <B>Submitter: </B>Richard Smith
 &#160;&#160;&#160;

 <B>Date: </B>2013-09-03<BR>


<P>[Moved to DR at the November, 2014 meeting.]</P>



<P>According to 6.10.3.2 [<A href="https://wg21.link/basic.start.static#2">basic.start.static</A>] paragraph 2,</P>

<BLOCKQUOTE>

Definitions of explicitly specialized class template static data members
have ordered initialization. Other class template static data members
(i.e., implicitly or explicitly instantiated specializations) have
unordered initialization.

</BLOCKQUOTE>

<P>This is not clear whether it is referring to static data members of
explicit specializations of class templates or to explicit specializations
of static data members of class template specializations.  It also does
not apply to static data member templates and non-member variable
templates.</P>

<P><B>Proposed resolution (February, 2014):</B></P>

<P>Change 6.10.3.2 [<A href="https://wg21.link/basic.start.static#2">basic.start.static</A>] paragraph 2 as follows:</P>

<BLOCKQUOTE>

...Dynamic initialization of a non-local variable with static storage duration
is <DEL>either ordered or unordered. Definitions of explicitly specialized
class template static data members have ordered initializa-tion. Other
class template static data members (i.e., implicitly or explicitly
instantiated specializations) have unordered initialization. Other
non-local variables with static storage duration have ordered
initialization</DEL> <INS><I>unordered</I> if the variable is an implicitly
or explicitly instantiated specialization, and otherwise is
<I>ordered</I> [<I>Note:</I> an explicitly specialized static data member
or variable template specialization has ordered initialization.
&#8212;<I>end note</I>]</INS>.  Variables with ordered initialization...

</BLOCKQUOTE>

<BR><BR>
</BODY>
</HTML>
