erichkeane wrote: >In my previous comments >(https://github.com/llvm/llvm-project/pull/69104#issuecomment-1771167758, >https://github.com/llvm/llvm-project/pull/69104#issuecomment-1771204043) I >provided an example of StoredNameKind enum that has enumerators 0 through 8 (9 >total, 4 bits to store), but we store it in a bit-fields of width 3, because >the last enumerator is there to count other enumerators, and is used for >offset purposes. If we apply -Wbitfield-enum-conversion to it as-is, we get a >false-positive: https://godbolt.org/z/4xPs6qPTY.
I thought that was a contrived example, but I see where it is from now (note your example is the related but not-exactly-the-same `Wbitfield-constant-conversion`), which brings up an additional concern/thing to deal with for the `non_storable` attribute (that is, do we apply it to assignments? how about exact-assignments like you've done there?). That is an odd/awkward pattern even so... I think there is still value to the warning as proposed, but I'm now not opposed to using `non_storable` as an escape hatch. https://github.com/llvm/llvm-project/pull/69104 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits