> Errors you cannot ignore
It's okay for me to declare a macro with `__attribute__((warn_unused_result))` for GCC and Clang, and `[[nodiscard]]` when the C code is later compiled with C++ (or nothing).
[[nodiscard]] is in C23.
[[nodiscard]] is in C23.