================ @@ -434,6 +434,37 @@ __datasizeof ``__datasizeof`` behaves like ``sizeof``, except that it returns the size of the type ignoring tail padding. +.. _builtin_structured_binding_size-doc: + +__builtin_structured_binding_size (C++) +--------------------------------------- +``__builtin_structured_binding_size`` returns the *structured binding size* +([dcl.struct.bind]) of the type ``T`` (or unevaluated expression ``arg``) ---------------- erichkeane wrote:
I wonder how valid the expression form of this is. The reason `sizeof` needs to take both is because C doesn't have `decltype`. I quite dislike builtins that take expressions because they aren't as obvious that they are unevaluated, despite being in a `function call` syntax location. https://github.com/llvm/llvm-project/pull/131515 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits