[PATCH] D119051: Extend the C++03 definition of POD to include defaulted functions

David Blaikie via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 10 18:03:53 PDT 2022


dblaikie added a comment.

Still waiting for the pre-merge checks to complete, but hopefully this is clean now.

Realized maybe we don't need a separate driver flag for this at all, and rely only on the abi-compat flag? That seems to be how (at least some) other ABI compat changes have been handled, looking at other uses of `ClangABI` enum values.

There could be more testing than only the indirect result of the packing problem that first inspired this patch. Any suggestions on what might be the most direct way to test whether the type's been considered pod in this sense?



================
Comment at: clang/lib/Driver/ToolChains/Clang.cpp:5594
+    unsigned Num;
+    if (!Ver.consumeInteger(10, Num) && Num <= 13)
+      DefaultedSMFArePOD = false;
----------------
aaron.ballman wrote:
> Is Clang 13 still the correct thing to test for here, or should this be 16 these days?
Hmm - trunk is currently destined to be released as 16, yeah? So I think the right version would be 15, here. "If you want the old clang's ABI, ask for that, otherwise this is 16's ABI (new)"? Off-by-one error, of sorts. 


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D119051



More information about the cfe-commits mailing list