the new StructType::get method. The second NULL
is to pacify the gcc warning mechanism. This
patch compiles but is otherwise untested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48645
91177308-0d34-0410-b5e6-
96231b3b80d8
bool isPacked=false);
/// StructType::get - This static method is a convenience method for
- /// creating structure types by specifying the elements as arguments. Note
- /// that this method always returns a non-packed struct.
+ /// creating structure types by specifying the elements as arguments.
+ /// Note that this method always returns a non-packed struct. To get
+ /// an empty struct, pass NULL, NULL.
static StructType *get(const Type *type, ...) END_WITH_NULL;
// Iterator access to the elements
va_list ap;
std::vector<const llvm::Type*> StructFields;
va_start(ap, type);
- do {
+ while (type) {
StructFields.push_back(type);
- } while ((type = va_arg(ap, llvm::Type*)));
+ type = va_arg(ap, llvm::Type*);
+ }
return llvm::StructType::get(StructFields);
}