[clang] [Clang] Throw error when calling atomic with pointer to zero size object (PR #91057)
via cfe-commits
cfe-commits at lists.llvm.org
Thu May 23 18:00:52 PDT 2024
================
@@ -330,6 +330,9 @@ def warn_atomic_op_misaligned : Warning<
"; the expected alignment (%0 bytes) exceeds the actual alignment (%1 bytes)">,
InGroup<AtomicAlignment>;
+def err_atomic_op_size_zero : Error<
----------------
Sirraide wrote:
We have around 5–6 diagnostics that all use some variant of ‘address argument to atomic builtin must be X’, which should probably be collapsed into a single diagnostic, but that should probably be a separate pr:
```
def err_atomic_builtin_must_be_pointer : Error<
"address argument to atomic builtin must be a pointer (%0 invalid)">;
def err_atomic_builtin_must_be_pointer_intptr : Error<
"address argument to atomic builtin must be a pointer to integer or pointer"
" (%0 invalid)">;
def err_atomic_builtin_must_be_pointer_intfltptr : Error<
"address argument to atomic builtin must be a pointer to integer,"
" floating-point or pointer (%0 invalid)">;
def err_atomic_builtin_pointer_size : Error<
"address argument to atomic builtin must be a pointer to 1,2,4,8 or 16 byte "
"type (%0 invalid)">;
```
https://github.com/llvm/llvm-project/pull/91057
More information about the cfe-commits
mailing list