<div dir="ltr">Just want to echo that I think prohibiting labeled break from e-switch is great for <i>both</i> reasons - keeping expressions functional in nature, <i>and</i> addressing the ambiguity in the argument after `break`.  Strong +1.<div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Mar 23, 2018 at 12:58 PM, Brian Goetz <span dir="ltr"><<a href="mailto:brian.goetz@oracle.com" target="_blank">brian.goetz@oracle.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <tt>I think the burden should go the other way -- we should justify
      why such flexibility is warranted, and I think this is difficult
      to do.  <br>
      <br>
      The conditions under which such control flow are useful are
      already small, and further, when you might want to code like that,
      the expression switch form offers relatively little benefit over
      expression statements anyway (since by definition you're using a
      lot of control-flow statements to make your complex control-flow
      decision.)  In exchange, the cost on all readers is high, because
      they can't be sure about what "break X" means.  Why burden all
      users with this complexity?  Why spend any of our complexity
      budget on such a </tt><tt>low-leverage option?  </tt><br><div><div class="h5">
    <br>
    <div class="m_-3793383191221618145moz-cite-prefix">On 3/23/2018 3:53 PM, John Rose wrote:<br>
    </div>
    <blockquote type="cite">
      
      On Mar 23, 2018, at 12:41 PM, Brian Goetz <<a href="mailto:Brian.Goetz@Oracle.COM" target="_blank">Brian.Goetz@Oracle.COM</a>> wrote:<br>
      <div>
        <blockquote type="cite"><br class="m_-3793383191221618145Apple-interchange-newline">
          <div><span style="font-family:Helvetica;font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I think so.  Its not
              detecting the ambiguity, its that the possibility of
              mixing control flow kinds means the poor reader has to
              reason about all the possibilities, and not be sure what
              "break FOO" means in a switch statement.</span></div>
        </blockquote>
      </div>
      <br>
      <div>A lighter fix, then, would be to require parentheses
        always.</div>
      <div>An even lighter fix would be leave that kind of
        clarification to style guides.</div>
      <div><br>
      </div>
    </blockquote>
    <br>
  </div></div></div>

</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div style="line-height:1.5em;padding-top:10px;margin-top:10px;color:rgb(85,85,85);font-family:sans-serif"><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(213,15,37);padding-top:2px;margin-top:2px">Kevin Bourrillion |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(51,105,232);padding-top:2px;margin-top:2px"> Java Librarian |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(0,153,57);padding-top:2px;margin-top:2px"> Google, Inc. |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(238,178,17);padding-top:2px;margin-top:2px"> <a href="mailto:kevinb@google.com" target="_blank">kevinb@google.com</a></span></div></div></div></div></div></div></div>
</div>