This is one of the ways in which gcc/clang have a slightly poorer design than MSVC, which individually numbers every single warning and error type. I’ve encountered other un-disableable warnings on gcc/clang before. It would be nice to assign unique identifiers to warning types.
Isn’t this what the ABI tag flag is for? It will explicitly opt into a potentially breaking ABI version, rather than picking it up because it happens to be the default.
Edit: Nope, doesn’t seem to have an effect when I tried it in godbolt, but maybe it’s somewhere nearby.
Edit2:
Ok, I misunderstood, I guess your point was the fix should have used an ABI tag. Instead as far as I can tell from the bug there’s nothing specific to that, and this warning is just always output when the fixed compiler code runs with that general psabi flag.
Edit3: And the concern about there being more breaking ABI changes is not academic, there was at least one more behind the same flag for 9.1, in just that same source file.
This is one of the ways in which gcc/clang have a slightly poorer design than MSVC, which individually numbers every single warning and error type. I’ve encountered other un-disableable warnings on gcc/clang before. It would be nice to assign unique identifiers to warning types.
Isn’t this what the ABI tag flag is for? It will explicitly opt into a potentially breaking ABI version, rather than picking it up because it happens to be the default.
Looking at C++ dialect options, would it be
-fabi-version=11for G++ 7?Edit: Nope, doesn’t seem to have an effect when I tried it in godbolt, but maybe it’s somewhere nearby.
Edit2:
Ok, I misunderstood, I guess your point was the fix should have used an ABI tag. Instead as far as I can tell from the bug there’s nothing specific to that, and this warning is just always output when the fixed compiler code runs with that general
psabiflag.Edit3: And the concern about there being more breaking ABI changes is not academic, there was at least one more behind the same flag for 9.1, in just that same source file.