Chapman Flack <chap@anastigmatix.net> writes:
> On 03/21/2016 10:21 AM, Aleksander Alekseev wrote:
>> Well in this case here is a patch that fixes "use of uninitialized
>> value" reports by MemorySanitizer I managed to catch so far.
> I'm new here so someone more experienced would have to weigh in,
> but I would wonder a couple of things:
> a. whether a braced struct assignment is supported in every
> C compiler that PostgreSQL still intends to support
We rely on struct assignment to work already; although I'm not sure
we should expect it to be efficient, so we might not want to use it
in performance-critical places.
> b. whether such a struct assignment is guaranteed to initialize
> padding spaces as well as declared fields (in all supported
> C versions/compilers).
I think this is a valid concern; my recollection is that the C standard
defines struct assignment as "assign each member".
> It's possible that memset() would be more convincing.
+1
regards, tom lane