1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Provide DLLEXPORT markers for C functions via PG_FUNCTION_INFO_V1 macro.

Second try at the change originally made in commit 8518583cd;
this time with contrib updates so that manual extern declarations
are also marked with PGDLLEXPORT.  The release notes should point
this out as a significant source-code change for extension authors,
since they'll have to make similar additions to avoid trouble on Windows.

Laurenz Albe, doc change by me

Patch: <A737B7A37273E048B164557ADEF4A58B53962ED8@ntex2010a.host.magwien.gv.at>
This commit is contained in:
Tom Lane
2016-11-04 19:04:56 -04:00
parent 20540710e8
commit c8ead2a397
4 changed files with 41 additions and 25 deletions

View File

@ -130,30 +130,30 @@ typedef struct
/* use in array iterator */
Datum ltree_isparent(PG_FUNCTION_ARGS);
Datum ltree_risparent(PG_FUNCTION_ARGS);
Datum ltq_regex(PG_FUNCTION_ARGS);
Datum ltq_rregex(PG_FUNCTION_ARGS);
Datum lt_q_regex(PG_FUNCTION_ARGS);
Datum lt_q_rregex(PG_FUNCTION_ARGS);
Datum ltxtq_exec(PG_FUNCTION_ARGS);
Datum ltxtq_rexec(PG_FUNCTION_ARGS);
Datum _ltq_regex(PG_FUNCTION_ARGS);
Datum _ltq_rregex(PG_FUNCTION_ARGS);
Datum _lt_q_regex(PG_FUNCTION_ARGS);
Datum _lt_q_rregex(PG_FUNCTION_ARGS);
Datum _ltxtq_exec(PG_FUNCTION_ARGS);
Datum _ltxtq_rexec(PG_FUNCTION_ARGS);
Datum _ltree_isparent(PG_FUNCTION_ARGS);
Datum _ltree_risparent(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_isparent(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_risparent(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltq_regex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltq_rregex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum lt_q_regex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum lt_q_rregex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltxtq_exec(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltxtq_rexec(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltq_regex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltq_rregex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _lt_q_regex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _lt_q_rregex(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltxtq_exec(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltxtq_rexec(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltree_isparent(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum _ltree_risparent(PG_FUNCTION_ARGS);
/* Concatenation functions */
Datum ltree_addltree(PG_FUNCTION_ARGS);
Datum ltree_addtext(PG_FUNCTION_ARGS);
Datum ltree_textadd(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_addltree(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_addtext(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_textadd(PG_FUNCTION_ARGS);
/* Util function */
Datum ltree_in(PG_FUNCTION_ARGS);
extern PGDLLEXPORT Datum ltree_in(PG_FUNCTION_ARGS);
bool ltree_execute(ITEM *curitem, void *checkval,
bool calcnot, bool (*chkcond) (void *checkval, ITEM *val));