On Thu, Sep 13, 2018 at 10:29 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > What I was vaguely imagining is that win32_port.h could #include > whichever Windows header defines these functions and structs, and > then do > > #define stat __stat64 > > static inline ... __stat64(...) { return _stat64(...); } > > What would need testing is whether the #define has nasty side-effects > even if we've already included the system header. I don't think it'd > hurt, eg, local variables named "stat"; though people might be surprised > when examining things in a debugger.
This, to me, seems way too clever. Replacing 'struct stat' with something else everywhere in the code is more churn, but far less likely to have surprising consequences down the road. Or so I would think, anyway. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company