aaron.ballman added a comment.

Some minor nits, but I think this is generally correct.



================
Comment at: include/clang/Sema/Sema.h:3059
   void ProcessDeclAttributes(Scope *S, Decl *D, const Declarator &PD);
+  // Helper for delayed proccessing TransparentUnion attribute.
+  void ProcessDeclAttributeDelayed(Decl *D, const AttributeList *AttrList);
----------------
I would remove the mention of TransparentUnion -- this is generalized for other 
uses already.


================
Comment at: lib/Parse/ParseDeclCXX.cpp:1889
+  if (!TagOrTempResult.isInvalid())
+    // Delayed proccessing TransparentUnion attribute.
+    Actions.ProcessDeclAttributeDelayed(TagOrTempResult.get(), 
attrs.getList());
----------------
I'd remove mention of TransparentUnion here as well.


================
Comment at: lib/Sema/SemaDecl.cpp:13499
+  if (Attr)
+    ProcessDeclAttributeList(S, New, Attr);
+
----------------
erichkeane wrote:
> I wasn't sure if this was the correct change in here.  My other option was to 
> move the above 2 lines (13495/13496) above these line's original spot, but 
> moving it here seems to have correctly passed all tests.  Anyone with more 
> knowledge here want to chime in?
I think this change is reasonable.


================
Comment at: lib/Sema/SemaDeclAttr.cpp:6201
+void Sema::ProcessDeclAttributeDelayed(Decl *D, const AttributeList *AttrList) 
{
+  for (const AttributeList* l = AttrList; l; l = l->getNext())
+    if (l->getKind() == AttributeList::AT_TransparentUnion) {
----------------
Nit: the `*` should bind to `l` and `l` should be `L` by our usual naming 
conventions (but a name better than `L` wouldn't be amiss).


https://reviews.llvm.org/D28266



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to