Hi John,<div><br></div><div>Yep - I'm not sure what to do about that. At the moment all we have in the way of defaults is the language options DefaultFPContract value. Perhaps it's reasonable to have a per-target DefaultFPContract value that can override the language default. When it comes to explicitly referencing the pragma I'm not sure what the best way to handle that is - As I understand it we won't know how many functions it applies to (and thus whether it's a good candidate as a global default) until we've already parsed them.<br>
<br></div><div>- Lang.</div><div><br><div class="gmail_quote">On Thu, May 31, 2012 at 7:40 PM, John McCall <span dir="ltr"><<a href="mailto:rjmccall@apple.com" target="_blank">rjmccall@apple.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="im">On May 31, 2012, at 7:22 PM, Lang Hames wrote:<br>
> Thanks for the suggestion Matthieu. I spoke to Doug and he recommended using attributes rather than a FunctionDecl bit to represent the fp_contract state.<br>
<br>
</div>Hmm.  I had suggested a bit on FunctionDecl on the assumption that this would often be controlled globally, maybe by using a flag to control the default or by activating a #pragma before including all the headers.  Actually, I could even imagine a target (maybe a GPU target?) even opting-in to this behavior by default.  If we're going to use an Attr, we need to make sure it doesn't get added unless the current #pragma state is different from the global default;  we really don't want to be allocating an attribute for every function definition in the translation unit.<br>

<span class="HOEnZb"><font color="#888888"><br>
John.<br>
</font></span></blockquote></div><br></div>