summaryrefslogtreecommitdiff
path: root/src/interfaces
diff options
context:
space:
mode:
authorTom Lane2019-05-31 15:45:33 +0000
committerTom Lane2019-05-31 15:45:33 +0000
commit7640f9312321ceba2af61f7017da7e64f0f7b667 (patch)
treebd42ca762cdd5769c23f06c7888bd0f72e351402 /src/interfaces
parent9e58705a7f9728f10b2e0f0c9adc6e6ecff7486e (diff)
Fix assorted header files that failed to compile standalone.
We have a longstanding project convention that all .h files should be includable with no prerequisites other than postgres.h. This is tested/relied-on by cpluspluscheck. However, cpluspluscheck has not historically been applied to most headers outside the src/include tree, with the predictable consequence that some of them don't work. Fix that, usually by adding missing #include dependencies. The change in printf_hack.h might require some explanation: without it, my C++ compiler whines that the function is unused. There's not so many call sites that "inline" is going to cost much, and besides all the callers are in test code that we really don't care about the size of. There's no actual bugs being fixed here, so I see no need to back-patch. Discussion: https://postgr.es/m/b517ec3918d645eb950505eac8dd434e@gaz-is.ru
Diffstat (limited to 'src/interfaces')
-rw-r--r--src/interfaces/ecpg/ecpglib/ecpglib_extern.h1
-rw-r--r--src/interfaces/ecpg/test/printf_hack.h2
-rw-r--r--src/interfaces/libpq/fe-gssapi-common.h5
3 files changed, 7 insertions, 1 deletions
diff --git a/src/interfaces/ecpg/ecpglib/ecpglib_extern.h b/src/interfaces/ecpg/ecpglib/ecpglib_extern.h
index f9336a0c23d..6cb7ab1a192 100644
--- a/src/interfaces/ecpg/ecpglib/ecpglib_extern.h
+++ b/src/interfaces/ecpg/ecpglib/ecpglib_extern.h
@@ -8,6 +8,7 @@
#include "sqlda-native.h"
#include "sqlda-compat.h"
#include "ecpg_config.h"
+#include "ecpgtype.h"
#ifndef CHAR_BIT
#include <limits.h>
diff --git a/src/interfaces/ecpg/test/printf_hack.h b/src/interfaces/ecpg/test/printf_hack.h
index ef584c0d548..1c061d5e87e 100644
--- a/src/interfaces/ecpg/test/printf_hack.h
+++ b/src/interfaces/ecpg/test/printf_hack.h
@@ -2,7 +2,7 @@
* print_double(x) has the same effect as printf("%g", x), but is intended
* to produce the same formatting across all platforms.
*/
-static void
+static inline void
print_double(double x)
{
#ifdef WIN32
diff --git a/src/interfaces/libpq/fe-gssapi-common.h b/src/interfaces/libpq/fe-gssapi-common.h
index deb010e4066..ebe24f7ca01 100644
--- a/src/interfaces/libpq/fe-gssapi-common.h
+++ b/src/interfaces/libpq/fe-gssapi-common.h
@@ -16,8 +16,13 @@
#include "libpq-fe.h"
#include "libpq-int.h"
+#ifdef ENABLE_GSS
+
void pg_GSS_error(const char *mprefix, PGconn *conn,
OM_uint32 maj_stat, OM_uint32 min_stat);
bool pg_GSS_have_ccache(gss_cred_id_t *cred_out);
int pg_GSS_load_servicename(PGconn *conn);
+
+#endif
+
#endif /* FE_GSSAPI_COMMON_H */