[PATCH] D83997: [os_log] Improve the way we extend the lifetime of objects passed to __builtin_os_log_format

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jul 22 20:05:12 PDT 2020


rjmccall added a comment.

Why is the lifetime extended to the enclosing block scope anyway?  I understand why we need a clang.arc.use — the optimizer can't reasonably understand that the object has to live within the buffer — but isn't the buffer only used for the duration of the call?  Why is extension necessary?



================
Comment at: clang/include/clang/Serialization/ASTBitCodes.h:1987
+      COK_CompoundLiteral,
+      COK_ImplicitCastExpr
+    };
----------------
This seems like an excessively general name for what's happening here.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83997





More information about the cfe-commits mailing list