On 07.11.25 16:03, Bertrand Drouvot wrote:
+/* + * Mark a declaration as deprecated with a custom message. The compiler will + * emit a warning when the deprecated entity is used. + */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L || \ +defined(__cplusplus) && __cplusplus >= 201402L
This could use some parentheses to disambiguate the && and ||. Also the second line could be indented (or just put it on one line).
+#define pg_attribute_deprecated(msg) [[deprecated(msg)]] +#elif defined(__GNUC__) || defined(__clang__)
The __clang__ part is not needed, because clang defines __GNUC__ also.
+#define pg_attribute_deprecated(msg) __attribute__((deprecated(msg))) +#elif defined(_MSC_VER) +#define pg_attribute_deprecated(msg) __declspec(deprecated(msg)) +#else +#define pg_attribute_deprecated(msg) +#endif
