You can check the macro definition there: #ifdef BUILDING_DLL #define PGDLLIMPORT __declspec (dllexport) #else /* not BUILDING_DLL */ #define PGDLLIMPORT __declspec (dllimport) #endif
#ifdef _MSC_VER #define PGDLLEXPORT __declspec (dllexport) #else #define PGDLLEXPORT #endif It's only useful on Windows platform for the dll building(import, export) the API entries. ------------------ Thanks&Regards, Xiong He ------------------ Original ------------------ From: "????"<luckyjack...@gmail.com>; Date: Mon, Oct 29, 2012 02:05 PM To: "pgsql-general"<pgsql-general@postgresql.org>; Subject: [GENERAL] Why PGDLLIMPORT is needed 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?