On Mon, Oct 29, 2012 at 04:41:05PM +0800, Craig Ringer wrote: > On 10/29/2012 02:05 PM, 高健 wrote: > > On /src/include/storage/proc.h: > > > > I saw the following line: > > > > extern PGDLLIMPORT PGPROC *MyProc; > > > > I want to know why PGDLLIMPORT is used here? > > > > Does it mean: exten PGPROC *MyProc; right? > > What platform are you working on? > > On Windows it's required to allow the static linker to generate the > correct symbol tables and the runtime/dynamic linker to correctly link > binaries. See: > > http://support.microsoft.com/kb/132044 > http://msdn.microsoft.com/en-us/library/8fskxacy(v=vs.80).aspx > http://msdn.microsoft.com/en-us/library/a90k134d(v=vs.80).aspx > > For other platforms the same macros can be used for symbol visibility > filtering, but are usually set to evaluate to nothing so they have no > effect. Thanks, those URLs are helpful, and I added them as C comments to win32.h. -- Bruce Momjian <bruce@xxxxxxxxxx> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general