aaron.ballman added inline comments.

================
Comment at: lib/AST/Expr.cpp:3715
@@ -3741,3 +3714,3 @@
   assert(D.Kind == Designator::ArrayDesignator && "Requires array designator");
-  Stmt *const *SubExprs = reinterpret_cast<Stmt *const *>(this + 1);
+  auto SubExprs = reinterpret_cast<Stmt *const *>(this + 1);
   return cast<Expr>(*(SubExprs + D.ArrayOrRange.Index + 1));
----------------
Eugene.Zelenko wrote:
> aaron.ballman wrote:
> > Hmmm, I'm not certain this is an improvement. It lacks the information that 
> > SubExprs is a pointer to a pointer, and it lacks the constness information. 
> > I would revert this one (and the next two).
> But all of this is mentioned in reinterpret_cast.
It is, but our usual rule is to put the cv-qualifiers and &/* as part of the 
auto signature so that the type properties are easier to identify, which is 
what makes this one kind of challenging. Since Stmt is the same length as auto, 
I think leaving it as-is may be less confusing.


Repository:
  rL LLVM

http://reviews.llvm.org/D15388



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

Reply via email to