Re: Add PGDLLEXPORT to PG_FUNCTION_INFO_V1
От | Robert Haas |
---|---|
Тема | Re: Add PGDLLEXPORT to PG_FUNCTION_INFO_V1 |
Дата | |
Msg-id | CA+TgmoavrtczRMQkSaLR6h_xyk8DjniiRwjG64+Yzi3vWVwS9A@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Add PGDLLEXPORT to PG_FUNCTION_INFO_V1 (Albe Laurenz <laurenz.albe@wien.gv.at>) |
Ответы |
Re: Add PGDLLEXPORT to PG_FUNCTION_INFO_V1
|
Список | pgsql-hackers |
On Fri, Oct 14, 2016 at 10:14 AM, Albe Laurenz <laurenz.albe@wien.gv.at> wrote: > Tom Lane wrote: >>> Well, the buildfarm doesn't like that even a little bit. It seems that >>> the MSVC compiler does not like seeing both "extern Datum foo(...)" and >>> "extern PGDLLEXPORT Datum foo(...)", so anything that had an extern in >>> a .h file is failing. There is also quite a bit of phase-of-the-moon >>> behavior in here, because in some cases some functions are raising errors >>> and others that look entirely the same are not. >> >> I take back the latter comment --- I was comparing HEAD source code >> against errors reported on back branches, and at least some of the >> discrepancies are explained by additions/removals of separate "extern" >> declarations. But still, if we want to do this we're going to need to >> put PGDLLEXPORT in every V1 function extern declaration. We might be >> able to remove some of the externs as unnecessary instead, but any way >> you slice it it's going to be messy. >> >> For the moment I've reverted the change. > > Sorry for having caused the inconvenience. > > Actually I would say that the correct solution is to remove the function > declarations from all the header files in contrib, since from commit e7128e8d > on the functions are declared by PG_FUNCTION_INFO_V1 anyway, right? Right. Why isn't that already the case? Commit e7128e8d seems to have tried. Did it just miss a bunch of cases? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: