Peter Eisentraut <peter_e@gmx.net> writes:
> We currently have
> void EncodeDateTime(struct pg_tm * tm, fsec_t fsec, int *tzp, char **tzn, int style, char *str)
> but tzn isn't used anywhere, only *tzn is used everywhere. Wouldn't it
> be clearer to remove that one level of indirection and instead have the
> signature be
> void EncodeDateTime(struct pg_tm * tm, fsec_t fsec, int *tzp, char *tzn, int style, char *str)
> or better yet
> void EncodeDateTime(struct pg_tm * tm, fsec_t fsec, const int *tzp, const char *tzn, int style, char *str)
It appears to me that null-ness of tzp and tzn are used as a 3-way flag
to identify the style of timezone output wanted (none, numeric, or alpha).
It would probably be better yet if it went like
enum tzstyle, int tzp, const char *tzn
where tzp or tzn would be examined only if tzstyle said so.
regards, tom lane