mirror of
https://github.com/postgres/postgres.git
synced 2025-11-19 13:42:17 +03:00
Move declaration of ecpg_gettext() to a saner place.
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
This commit is contained in:
@@ -206,6 +206,12 @@ void ecpg_set_compat_sqlda(int, struct sqlda_compat **, const PGresult *, int,
|
|||||||
struct sqlda_struct *ecpg_build_native_sqlda(int, PGresult *, int, enum COMPAT_MODE);
|
struct sqlda_struct *ecpg_build_native_sqlda(int, PGresult *, int, enum COMPAT_MODE);
|
||||||
void ecpg_set_native_sqlda(int, struct sqlda_struct **, const PGresult *, int, enum COMPAT_MODE);
|
void ecpg_set_native_sqlda(int, struct sqlda_struct **, const PGresult *, int, enum COMPAT_MODE);
|
||||||
|
|
||||||
|
#ifdef ENABLE_NLS
|
||||||
|
extern char *ecpg_gettext(const char *msgid) pg_attribute_format_arg(1);
|
||||||
|
#else
|
||||||
|
#define ecpg_gettext(x) (x)
|
||||||
|
#endif
|
||||||
|
|
||||||
/* SQLSTATE values generated or processed by ecpglib (intentionally
|
/* SQLSTATE values generated or processed by ecpglib (intentionally
|
||||||
* not exported -- users should refer to the codes directly) */
|
* not exported -- users should refer to the codes directly) */
|
||||||
|
|
||||||
|
|||||||
@@ -12,12 +12,6 @@
|
|||||||
#include "sqlca.h"
|
#include "sqlca.h"
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#ifdef ENABLE_NLS
|
|
||||||
extern char *ecpg_gettext(const char *msgid) pg_attribute_format_arg(1);
|
|
||||||
#else
|
|
||||||
#define ecpg_gettext(x) (x)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __cplusplus
|
#ifndef __cplusplus
|
||||||
#ifndef bool
|
#ifndef bool
|
||||||
#define bool char
|
#define bool char
|
||||||
|
|||||||
Reference in New Issue
Block a user