diff --git a/velox/vector/VectorTypeUtils.h b/velox/vector/VectorTypeUtils.h index ca6a6b3cef13..b23316db5085 100644 --- a/velox/vector/VectorTypeUtils.h +++ b/velox/vector/VectorTypeUtils.h @@ -85,6 +85,11 @@ struct TypeToFlatVector { using type = typename KindToFlatVector::typeKind>::type; }; +// Generic's, by design, do not have any compile time type information, so it is +// impossible to determine what sort of Vector would hold values for this type. +// To work around this, we just return BaseVector, since any Vector class can be +// safely casted to BaseVector, and it is consistent with classes specialized +// for the Generic type, like the VectorWriter. template struct TypeToFlatVector> { using type = BaseVector;