This attribute, named pass_dynamic_object_size has the same semantics as pass_object_size, except that it calls __builtin_dynamic_object_size at the caller instead of __builtin_object_size. You can read more about __builtin_dynamic_object_size here: https://clang.llvm.org/docs/LanguageExtensions.html#evaluating-object-size-dynamically, it was introduced in D56760.
rdar://48208787
Thanks for taking a look!
Erik