<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Oct 1, 2014, at 9:43 AM, Oliver Hunt wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 1, 2014, at 9:05 AM, Mark S. Miller <<a href="mailto:erights@google.com" class="">erights@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Good point. If we can require all such assignments to be rejected statically, why is a runtime assignment to a const variable even possible? Can't we just assert that this cannot occur?</div></div></blockquote><div><br class=""></div><div>You mean duplicate assignment? IIRC the problem is code that does</div><div><br class=""></div><div>const x;</div></div></div></blockquote>syntax error: no initializer</div><div><br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div><div>x=blah;</div><div><br class=""></div><div>or </div><div><br class=""></div><div>if (foo)</div><div>    const x = bar</div></div></div></blockquote>syntax error: not a statement<br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div><div>else</div><div>    const x = wiffle</div></div></div></blockquote>syntax error: not a statement<br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div><div><br class=""></div><div>etc</div><div><br class=""></div></div></div></blockquote><br></div><div>Allen</div><br></body></html>