If the passed-in type OID isn't one of the very short list that TupleDescInitBuiltinEntry supports, it will silently hand back a broken TupleDesc, rather than throwing an error. How can this possibly be considered good code?
(So far as I can see, none of the extant callers could hit such an error, but it's still bad code.) regards, tom lane