<div dir="ltr">On Mon, Aug 26, 2013 at 6:22 PM, Aaron Ballman <span dir="ltr"><<a href="mailto:aaron@aaronballman.com" target="_blank">aaron@aaronballman.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This patch addresses some inconsistencies between inheritable and<br>
non-inheritable attributes.  Currently, the CUDAHost and CUDADevice<br>
attributes are specified as inheritable in Attr.td, but processed as<br>
NonInheritable in SemaDeclAttr.cpp.  Similarly, Mode is specified as<br>
NonInheritable in Attr.td but processed as Inheritable in<br>
SemaDeclAttr.cpp.<br>
<br>
This patch makes the processing and the declaration consistent.<br>
However, since I am not that familiar with CUDA or mode attributes, I<br>
wanted to make sure I've not got things backwards or am<br>
misunderstanding a design constraint.<br>
</blockquote><div><br></div><div>The "Mode" attribute shouldn't be inheritable; it only applies to a particular typedef declaration, not redeclarations of it.</div><div><br></div><div> I'm not sure about the CUDA attributes; if nobody chimes in, just do whatever seems appropriate.</div>
<div><br></div><div>-Eli</div></div></div></div>