On Mon, Mar 25, 2013 at 4:21 PM, Ismail Pazarbasi <span dir="ltr"><<a href="mailto:ismail.pazarbasi@gmail.com" target="_blank">ismail.pazarbasi@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
  I have read the resolution for the issue 1351, and I was curious about aligning this with the removal of dynamic exception specifications as well.</blockquote><div><br></div><div>I've started working on implementing core issue 1351. We discussed this issue in a CWG teleconference today, and there are some tweaks to the wording coming...</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Could you please confirm whether I understood this part correctly; given the example in issue 1351, in the move constructor declaration, "noexcept" is represented with an empty set:<br>

  `B(B&&, int = (throw Y(), 0)) throw(Y) noexcept;`<br></blockquote><div><br></div><div>This is ill-formed. A function declaration can only have one exception-specification.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

  The union of set of potential exceptions is: {Y} U {Y} U {} = {Y};<br>
  Likewise, if it was:<br>
  `B(B&&, int = (throw Y(), 0)) throw(Z) noexcept;`<br>
  The union of set of potential exceptions: {Y} U {Z} U {} = {Y, Z}<br>
<br>
  Could you please explain the purpose of having throw(E) and noexcept on the same declarator? I understand throw(E) and noexcept(false) would be compatible.</blockquote><div><br></div><div>throw(E) and noexcept(false) are not compatible exception-specifications; see 15.4/3.</div>
</div>