Anastasia accepted this revision. Anastasia added a comment. This revision is now accepted and ready to land.
LGTM! @Pekka, any comments here? We will finalize it if not. ================ Comment at: lib/Sema/SemaDeclAttr.cpp:5823 @@ -5788,8 +5822,3 @@ - // Walk the declarator structure, applying decl attributes that were in a type - // position to the decl itself. This handles cases like: - // int *__attr__(x)** D; - // when X is a decl attribute. - for (unsigned i = 0, e = PD.getNumTypeObjects(); i != e; ++i) - if (const AttributeList *Attrs = PD.getTypeObject(i).getAttrs()) - ProcessDeclAttributeList(S, D, Attrs, /*IncludeCXX11Attributes=*/false); + // Skip pipe type, otherwise it will be processed twice with its element type + const ParmVarDecl *PDecl = llvm::dyn_cast<ParmVarDecl>(D); ---------------- . missing http://reviews.llvm.org/D16040 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits