Hi,
Due to the following in builder_union.cc <http://builder_union.cc/> (Line 67-70)
type_id_to_children_.resize(union_type.max_type_code() + 1, nullptr);
DCHECK_LT(
type_id_to_children_.size(),
static_cast<decltype(type_id_to_children_)::size_type>(UnionType::kMaxTypeCode));
and type.cc <http://type.cc/> (Line 640-644)
uint8_t UnionType::max_type_code() const {
return type_codes_.size() == 0
? 0
: *std::max_element(type_codes_.begin(), type_codes_.end());
}
In practice type codes of the union type must always be below or equal to 125.
Is this intended behavior?