<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On 25 September 2013 08:17, Sean Silva <span dir="ltr"><<a href="mailto:silvas@purdue.edu" target="_blank">silvas@purdue.edu</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div>On Mon, Sep 23, 2013 at 10:59 PM, Richard Smith <span dir="ltr"><<a href="mailto:richard@metafoo.co.uk" target="_blank">richard@metafoo.co.uk</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Nick,</div><div><br></div><div>This looks really promising. Do you yet know whether this is enough to implement *all* the functionality of -DFORTIFY_SOURCE?</div>



<div><br></div><div>One big thing missing here is documentation. That should serve to both motivate the feature (and explain why it's sufficiently valuable for us to have and maintain this extension), and to describe how it's intended to be used, plus what we actually guarantee in terms of its semantics.</div>



</div></blockquote><div><br></div></div><div>It may also be useful to run this past the GCC folks to get feedback. If this extension is truly useful, I would expect that we would want GCC to implement it as well, so it would be good to have them on board with the idea.</div>


</div></div></div></blockquote><div><br></div><div>I don't think this will be productive. If I propose this, it won't be with a patch, and gcc already doesn't implement attribute overloadable which is necessary for my only use case. If we go all the way back to figuring out how to satisfy my use case, they'll point out that gcc has already solved fortify (in a way clang can't use, but that's not their problem) and I don't forsee this discussion leading to any illumination.<br>

<br></div><div>If it's truly a useful extension, then it will show up in libraries and that might motivate an implementation. As for getting the semantics right, the primary technique is to base its semantics on existing rules in the language standard, and the secondary technique is to try it out, myself writing testcases and a customer is prototyping it in their library.<br>

</div><div>
<br>Nick<br></div></div><br></div></div>