Re: strange case of "if ((a & b))"
Justin Pryzby <pryzby@telsasoft.com>
From: Justin Pryzby <pryzby@telsasoft.com>
To: Bruce Momjian <bruce@momjian.us>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@lists.postgresql.org
Date: 2021-08-18T19:23:18Z
Lists: pgsql-hackers
On Wed, Aug 18, 2021 at 03:15:21PM -0400, Bruce Momjian wrote: > On Wed, Aug 18, 2021 at 01:28:56PM -0500, Justin Pryzby wrote: > > > > 0002 is a bonus patch I found in my typos branch. I will hold onto it for > > > > later if nobody wants to deal with it. > > > > > > I am ready to deal with this patch. Should I apply it to master soon? > > > > Thanks for looking at it. I suggest not to apply 0002 - I'll resend it on > > another thread with other, similar cleanups. > > OK. > > > However, I have another patch to clean up stuff like "? true : false", which > > seems related to this patch (but maybe it should be applied separately). > > Yes, that is odd. I think it is related to the confusion that if () > compares non-zero(true) and zero(false), while booleans return only 1/0 > (no other values). This explores that: > > https://stackoverflow.com/questions/22489517/c-language-boolean-expression-return-value > > Do you want me to consider this patch now? Yes, please. It may be helpful to dispose of the first patch first. Thanks, Justin
Commits
-
Clean up more code using "(expr) ? true : false"
- 68f7c4b57a27 15.0 landed
-
Clean up some code using "(expr) ? true : false"
- fd0625c7a9c6 15.0 landed