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