• Tom Lane's avatar
    Move declaration of ecpg_gettext() to a saner place. · c8cb98ec
    Tom Lane authored
    Declaring this in the client-visible header ecpglib.h was a pretty
    poor decision.  It's not meant to be application-callable (and if
    it was, putting it outside the extern "C" { ... } wrapper means
    that C++ clients would fail to call it).  And the declaration would
    not even compile for a client, anyway, since it would not have the
    macro pg_attribute_format_arg().  Fortunately, it seems that no
    clients have tried to include this header with ENABLE_NLS defined,
    or we'd have gotten complaints about that.  But we have no business
    putting such a restriction on client code.
    
    Move the declaration to ecpglib_extern.h, since in fact nothing
    outside src/interfaces/ecpg/ecpglib/ needs to call it.
    
    The practical effect of this is just that clients can now safely
    #include ecpglib.h while having ENABLE_NLS defined, but that seems
    like enough of a reason to back-patch it.
    
    Discussion: https://postgr.es/m/20590.1573069709@sss.pgh.pa.us
    c8cb98ec
ecpglib_extern.h 7.25 KB