<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">By existing semantics of the exclamation mark, ‘guard!' would be expected to cause the application to fail fatally, not throw. This is the same as try!.<div class=""><div class=""><br class=""></div><div class="">-DW</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On May 2, 2016, at 1:09 PM, Dominik Pich via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hello,<div class="">often the guard statement is used to only unwrap optionals. multiple guards will cause a lot of ‘overhead’.</div><div class="">also often if it doesn’t work. there is no easy way we can gracefully recover ;)</div><div class=""><br class=""></div><div class="">so how about we do the same as with try/catch where you can use try! and have a guard!</div><div class=""><br class=""></div><div class="">the <b class="">guard!</b> could just throw an exception …</div><div class=""><br class=""></div><div class="">regards</div><div class="">Dominik</div></div>_______________________________________________<br class="">swift-evolution mailing list<br class=""><a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-evolution<br class=""></div></blockquote></div><br class=""></div></div></body></html>