Re: [COMMITTERS] pgsql: Add configure infrastructure to detectsupport for C99's restric
От | Andres Freund |
---|---|
Тема | Re: [COMMITTERS] pgsql: Add configure infrastructure to detectsupport for C99's restric |
Дата | |
Msg-id | 20171012001320.4putagiruuehtvb6@alap3.anarazel.de обсуждение исходный текст |
Ответ на | [COMMITTERS] pgsql: Add configure infrastructure to detect support for C99'srestric (Andres Freund <andres@anarazel.de>) |
Ответы |
Re: [COMMITTERS] pgsql: Add configure infrastructure to detectsupport for C99's restric
|
Список | pgsql-committers |
Hi, On 2017-10-11 23:11:15 +0000, Andres Freund wrote: > Add configure infrastructure to detect support for C99's restrict. > > Will be used in later commits improving performance for a few key > routines where information about aliasing allows for significantly > better code generation. > > This allows to use the C99 'restrict' keyword without breaking C89, or > for that matter C++, compilers. If not supported it's defined to be > empty. Woodlouse doesn't like this, erroring out with: C:\buildfarm\buildenv\HEAD\pgsql.build\src\include\libpq/pqformat.h(47): error C2219: syntax error : type qualifier mustbe after '*' (src/backend/access/common/printsimple.c) [C:\buildfarm\buildenv\HEAD\pgsql.build\postgres.vcxproj] It's MSVC being super peculiar about error checks. I think msvc is just confused by the pointer hiding typedef. Using some online MSVC (and other compilers) frontend: https://godbolt.org/g/TD3nmA I confirmed that removing the pointer hiding typedef indeed resolves the isssue. I can't quite decide whether msvc just has taste and dislikes pointer hiding typedefs as much as I do, or whether it's incredibly stupid ;) I'll add a comment and use StringInfoData *. Greetings, Andres Freund -- Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
В списке pgsql-committers по дате отправления: