Dilip Kumar <dilipbalaut(at)gmail(dot)com> writes:
> IIRC, In catalog we intentionally left it as Oid because RelFileNumber is
> an internal typedef bug, it is not an exposed datatype, so probably we can
> not use it in catalog.
We could declare it as RelFileNumber so that that is what C code sees,
and teach Catalog.pm to translate that to OID in the emitted catalog
contents. I think you'd have to do that to avoid a ton of false
positives when you make RelFileNumber into a struct, and we might as
well keep the result.
regards, tom lane