- else if (const VariableArrayType *VAT = cast<VariableArrayType>(AT)) Isn't this tautological? I thought that cast<> required its argument to be nonnull (and hence this would always be true (or otherwise UB)). If not, then the existence of cast_or_null<> seems suspect. -- Sean Silva