diff --git a/include/clang/AST/Expr.h b/include/clang/AST/Expr.h index 46b1c86642a9676f5265cff1d53ddab4a530e25d..e61e9240a1b7855ed8b27a639de52b8c97184f87 100644 --- a/include/clang/AST/Expr.h +++ b/include/clang/AST/Expr.h @@ -3783,10 +3783,19 @@ public: /// \brief Retrieve the set of initializers. Expr **getInits() { return reinterpret_cast<Expr **>(InitExprs.data()); } + /// \brief Retrieve the set of initializers. + Expr * const *getInits() const { + return reinterpret_cast<Expr * const *>(InitExprs.data()); + } + ArrayRef<Expr *> inits() { return llvm::makeArrayRef(getInits(), getNumInits()); } + ArrayRef<Expr *> inits() const { + return llvm::makeArrayRef(getInits(), getNumInits()); + } + const Expr *getInit(unsigned Init) const { assert(Init < getNumInits() && "Initializer access out of range!"); return cast_or_null<Expr>(InitExprs[Init]);