aaron.ballman accepted this revision.
aaron.ballman added a comment.
This revision is now accepted and ready to land.

Aside from one minor nit, LGTM!



================
Comment at: include/clang/AST/Decl.h:901
+    /// member functions.
+    unsigned ImplicitParamKind : 3;
   };
----------------
rjmccall wrote:
> ABataev wrote:
> > aaron.ballman wrote:
> > > ABataev wrote:
> > > > aaron.ballman wrote:
> > > > > It's a bit strange to me that the non-parameter declaration bits now 
> > > > > have a field for implicit parameter information. Why here instead of 
> > > > > `ParmVarDeclBits`?
> > > > Actually, `ImplicitParamDecl` already uses some bits from the 
> > > > `NonParmVarDeclBitfields`, at least it may be marked as 
> > > > `ARCPseudoStrong` for ObjC. That's why I had to reuse 
> > > > `NonParmVarDeclBitfields` part.
> > > Ew. That's nasty and we should probably fix that (not as part of this 
> > > patch). Can you add a FIXME here?
> > Ok, I will add FIXME for `ARCPseudoStrong` and for the `ImplicitParamKind` 
> > bitfields
> The FIXME doesn't make sense because ImplicitParamDecl is not a subclass of 
> ParamVarDecl.
> 
> The comment here needs to be updated.
> The FIXME doesn't make sense because ImplicitParamDecl is not a subclass of 
> ParamVarDecl.

Then the class name is poor, because I would not expect to find *anything* 
about parameter declarations (implicit or otherwise) in a class named 
`NonParmVarDeclBitfields`. However, I see the logic behind the split better 
now, so thank you for that. (Nothing needs to be done here for this patch.)


================
Comment at: lib/Serialization/ASTWriterDecl.cpp:918
     Record.push_back(D->isPreviousDeclInSameBlockScope());
+    if (auto *IPD = dyn_cast<ImplicitParamDecl>(D))
+      Record.push_back(static_cast<unsigned>(IPD->getParameterKind()));
----------------
aaron.ballman wrote:
> `const auto *`
This is still missing the `const` qualifier.


https://reviews.llvm.org/D33735



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

Reply via email to