Re: gettimeofday cause crash on Windows
От | Robert Haas |
---|---|
Тема | Re: gettimeofday cause crash on Windows |
Дата | |
Msg-id | CA+Tgmoa-ec6xc_W0o5uAeV+=Hk5uLxQCg1ofQxOgH4ktH60AXg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: gettimeofday cause crash on Windows (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: gettimeofday cause crash on Windows
Re: gettimeofday cause crash on Windows |
Список | pgsql-bugs |
On Sat, Feb 21, 2015 at 1:00 PM, Robert Haas <robertmhaas@gmail.com> wrote: > On Sat, Feb 21, 2015 at 12:20 PM, Robert Haas <robertmhaas@gmail.com> wrote: >> On Thu, Feb 12, 2015 at 9:59 PM, Michael Paquier >> <michael.paquier@gmail.com> wrote: >>> I looked at your patch and tested it with msvc and it looks good to me. >> >> Committed with cosmetic adjustments. Hopefully one of you fine >> gentlemen will jump in to help if this turns out to break, because I >> don't do Windows. > > currawong doesn't like this: > > "c:\prog\bf\root\HEAD\pgsql.build\pgsql.sln" (default target) (1) -> > (postgres target) -> > .\src\port\gettimeofday.c(53): error C2440: 'initializing' : cannot > convert from 'void (__cdecl *)(LPFILETIME)' to 'PgGetSystemTimeFn' > > > "c:\prog\bf\root\HEAD\pgsql.build\pgsql.sln" (default target) (1) -> > (misc\libpgport target) -> > .\src\port\gettimeofday.c(53): error C2440: 'initializing' : cannot > convert from 'void (__cdecl *)(LPFILETIME)' to 'PgGetSystemTimeFn' > > 0 Warning(s) > 2 Error(s) I assume that the problem here must be whatever secret sauce WINAPI pours on the declaration. PgSystemTimeFn is declared like this: typedef VOID (WINAPI *PgGetSystemTimeFn)(LPFILETIME); ...and the function we're trying to assign to a variable of that type is declared like this: static void init_gettimeofday(LPFILETIME lpSystemTimeAsFileTime); Either "void" does not mean the same thing as "VOID", which would be exceedingly evil, or the WINAPI in there matters, which is still evil, but somewhat more understandable. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-bugs по дате отправления: