<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<TITLE>
    CWG Issue 1166</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="1166"></A><H4>1166.
  
<I>exception-declaration</I>s that do not declare objects
</H4>
<B>Section: </B>14.4&#160; [<A href="https://wg21.link/except.handle">except.handle</A>]
 &#160;&#160;&#160;

 <B>Status: </B>C++11
 &#160;&#160;&#160;

 <B>Submitter: </B>US
 &#160;&#160;&#160;

 <B>Date: </B>2010-08-03<BR><BR>


<P>[Voted into the WP at the March, 2011 meeting as part of paper N3262.]</P>

<A href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3296.html#GB45">N3092 comment
  GB&#160;45<BR></A>

<P>According to 14.4 [<A href="https://wg21.link/except.handle#16">except.handle</A>] paragraph 16,</P>

<BLOCKQUOTE>

The object declared in an <I>exception-declaration</I> or, if the
<I>exception-declaration</I> does not specify a name, a
temporary (6.8.7 [<A href="https://wg21.link/class.temporary">class.temporary</A>]) is copy-initialized
(9.5 [<A href="https://wg21.link/dcl.init">dcl.init</A>]) from the exception object.  The
object shall not have an abstract class type.  The object is
destroyed when the handler exits, after the destruction of
any automatic objects initialized within the handler.

</BLOCKQUOTE>

<P>This wording leaves unspecified how an <I>exception-declaration</I>
that is a reference should be treated.  For example, presumably a
reference to an abstract class type should be permitted, but that is
not specified.  The treatment of ellipsis is also not clearly
addressed.</P>

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