jfb added a comment.

In D80055#2042630 <https://reviews.llvm.org/D80055#2042630>, @rsmith wrote:

> I'm not convinced that this is an especially useful diagnostic (much like 
> with `-Wpadded`), but I'm also not opposed if you are aware of cases where it 
> would be used.


I wrote it to help with issues a codebase was having adopting variable 
auto-init. They were surprised at what clang did, and wish they could have 
known. This is just one datapoint, and I agree that generally this isn't super 
useful.

> It seems worth pointing out that, at least in C, merely assigning to a union 
> member results in all padding becoming unspecified (6.2.6.1/7). So the 
> suggestion to `memset` the union to zero and then assign to a specific union 
> member does not work.

Indeed, this isn't something I'm trying to address here but it would be useful 
to do so.

I was wondering if any of the tests were surprising to you, or if the behavior 
described was as expected? It's certainly not tractable for most users of C and 
C++ (which might be fine, it shouldn't be relied on).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80055/new/

https://reviews.llvm.org/D80055



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to