Re: shadow variables - pg15 edition
От | David Rowley |
---|---|
Тема | Re: shadow variables - pg15 edition |
Дата | |
Msg-id | CAApHDvqWGMdB_pATeUqE=JCtNqNxObPOJ00jFEa2_sZ20j_Wvg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: shadow variables - pg15 edition (David Rowley <dgrowleyml@gmail.com>) |
Ответы |
Re: shadow variables - pg15 edition
Re: shadow variables - pg15 edition |
Список | pgsql-hackers |
On Wed, 5 Oct 2022 at 21:05, David Rowley <dgrowleyml@gmail.com> wrote: > 5 warnings remain. 4 of these are for PG_TRY() and co. I've attached a draft patch for a method I was considering to fix the warnings we're getting from the nested PG_TRY() statement in utility.c. The C preprocessor does not allow name overloading in macros, but of course, it does allow variable argument marcos with ... so I just used that and added ##__VA_ARGS__ to each variable. I think that should work ok providing callers only supply 0 or 1 arguments to the macro, and of course, make that parameter value the same for each set of macros used in the PG_TRY() statement. The good thing about the optional argument is that we don't need to touch any existing users of PG_TRY(). The attached just modifies the inner-most PG_TRY() in the only nested PG_TRY() we have in the tree in utility.c. The only warning remaining after applying the attached is the "now" warning in pgbench.c:7509. I'd considered changing this to "thenow" which translates to "right now" in the part of Scotland that I'm from. I also considered "nownow", which is used in South Africa [1]. Anyway, I'm not really being serious, but I didn't come up with anything better than "now2". It's just I didn't like that as it sort of implies there are multiple definitions of "now" and I struggle with that... maybe I'm just thinking too much in terms of Newtonian Relativity... David [1] https://www.goodthingsguy.com/fun/now-now-just-now/
Вложения
В списке pgsql-hackers по дате отправления: