aaron.ballman accepted this revision.
aaron.ballman added a comment.
This revision is now accepted and ready to land.

LGTM!



================
Comment at: clang/test/CodeGenCXX/trivial-auto-var-init-attribute.cpp:38-50
+// UNINIT-LABEL:  test_pragma_attribute_uninitialized_f2(
+// UNINIT:      alloca
+// UNINIT-NEXT: call void
+// ZERO-LABEL:    test_pragma_attribute_uninitialized_f2(
+// ZERO:      alloca
+// ZERO-NEXT: call void
+// PATTERN-LABEL: test_pragma_attribute_uninitialized_f2(
----------------
I think you can remove this test case as it's basically identical to the 
previous one.


================
Comment at: clang/test/Parser/pragma-attribute.cpp:190
+#pragma clang attribute pop
+#pragma clang attribute push([[clang::uninitialized]], apply_to = variable) // 
expected-error {{attribute 'uninitialized' can't be applied to 'variable'}}
+#pragma clang attribute pop
----------------
jfb wrote:
> Should variable work? Since it’s a superset of local it seems like maybe? But 
> then again only local works, so ok not sure. 
I think this is correct. Requiring an explicit `is_local` here is a 
conservative approach. It means we can start supporting 
`[[clang::uninitialized]]` in other contexts without breaking code that uses 
`#pragma clang attribute` to apply it to more entities unexpectedly.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D78693



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to