<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 25, 2014 at 12:31 AM, Scott L. Burson <span dir="ltr"><<a href="mailto:Scott@sympoiesis.com" target="_blank">Scott@sympoiesis.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On Thu, Apr 24, 2014 at 7:29 PM, Steve Haflich <<a href="mailto:shaflich@gmail.com">shaflich@gmail.com</a>> wrote:<br>

> Take for example aref, which might be used to<br>
> extract octets of characters or whatever from a buffer.  aref makes no<br>
> guarantees even in safe code that it will signal bad array bounds.<br>
<br>
</div>I've long thought that was an oversight, though now that you point it<br>
out, I realize I must have been mistaken.<br>
<br>
Still, it surprises me.  I don't know of any implementation that<br>
doesn't bounds-check aref under normal speed/safety settings, and<br>
clearly, users expect them to do so. <br></blockquote><div><br></div><div>I am surprised too. I always understood it like you Scott but now that re-read<br></div><div>the page on aref I see that it is exactly like Steve says, no mention of any<br>
</div><div>exception and a statement that "subscripts" must be a list of valid array indices<br></div><div>right from the start of the call to aref. Yet that leaves me even more curious<br></div><div>to know which implementation has read the spec as strictly as Steve says<br>
</div><div>it can be even under (safety 3)? Does anyone know any?<br></div></div><br><br></div></div>