-
由 Dhanashree Kashid 提交于
After 8.3 merge, gpdb has new polymorphic types, ANYENUM and ANYNONARRAY. This fix adds support for ANYENUM and ANYNONARRAY in Translator. As per postgreSQL, when a function has polymorphic arguments and results; in the function call they must have the same actual type. For example, a function declared as `f(ANYARRAY) returns ANYENUM` will only accept arrays of enum types. We already have this resolution logic implemented in `resolve_polymorphic_argtypes()`. Refactor the code in `PdrgpmdidResolvePolymorphicTypes()` to use `resolve_polymorphic_argtypes()` to deduce the correct data type for function argument and return type, based on function call. Signed-off-by: NBhuvnesh Chaudhary <bchaudhary@pivotal.io> Signed-off-by: NOmer Arap <oarap@pivotal.io>
c3ad85eb