Andres Freund <and...@anarazel.de> writes: > On 2017-04-05 09:43:53 -0400, Tom Lane wrote: >> Yeah, I was just thinking about that. The core problem though is that >> we need the "bool" fields in the system catalog structs (or anyplace >> else that it represents an on-disk bool datum) to be understood as >> being 1 byte wide. I do not think we can assume that that's true of >> every compiler's _Bool type. So we'd need some workaround for that. >> There are probably other places such as isnull arrays where it'd be >> wise to force the width to be 1 byte.
> I wonder if there's any compiler that has _Bool/stdbool.h where it's not > 1 byte sized. It's definitely not guaranteed by the standard. Hm. I'd supposed that it'd be pretty common to make _Bool be int-sized. If it is char-sized almost everywhere, we could create a policy of using stdbool.h unless configure sees that _Bool is not char-sized. OTOH, that doesn't improve our existing situation that we have platform-dependent semantics around "bool" (eg, what happens when a non-char-sized value is assigned). It would just change which one is the majority case, and not in a very safe direction :-( >> In any case, that's a research project that's not getting done for v10. > Agreed. Yeah, it's off-topic for right now. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers