[ruby/digest] Move macros for warnings to defs.h

https://github.com/ruby/digest/commit/70a805b872
This commit is contained in:
Nobuyoshi Nakada 2025-05-02 17:16:54 +09:00 committed by git
parent ba6a36e653
commit 277bcb717b
3 changed files with 23 additions and 8 deletions

View File

@ -16,4 +16,26 @@
# define __END_DECLS
#endif
#define RB_DIGEST_DIAGNOSTIC(compiler, op, flag) _Pragma(STRINGIZE(compiler diagnostic op flag))
#ifdef RBIMPL_WARNING_IGNORED
# define RB_DIGEST_WARNING_IGNORED(flag) RBIMPL_WARNING_IGNORED(flag)
# define RB_DIGEST_WARNING_PUSH() RBIMPL_WARNING_PUSH()
# define RB_DIGEST_WARNING_POP() RBIMPL_WARNING_POP()
#elif defined(__clang__)
# define RB_DIGEST_WARNING_IGNORED(flag) RB_DIGEST_DIAGNOSTIC(clang, ignored, #flag)
# define RB_DIGEST_WARNING_PUSH() _Pragma("clang diagnostic push")
# define RB_DIGEST_WARNING_POP() _Pragma("clang diagnostic pop")
#else /* __GNUC__ */
# define RB_DIGEST_WARNING_IGNORED(flag) RB_DIGEST_DIAGNOSTIC(GCC, ignored, #flag)
# define RB_DIGEST_WARNING_PUSH() _Pragma("GCC diagnostic push")
# define RB_DIGEST_WARNING_POP() _Pragma("GCC diagnostic pop")
#endif
#ifdef RBIMPL_HAS_WARNING
# define RB_DIGEST_HAS_WARNING(_) RBIMPL_HAS_WARNING(_)
#elif defined(__has_warning)
# define RB_DIGEST_HAS_WARNING(_) __has_warning(_)
#else
# define RB_DIGEST_HAS_WARNING(_) 0
#endif
#endif /* DEFS_H */

View File

@ -2,14 +2,6 @@
#include <CommonCrypto/CommonDigest.h>
#ifdef __GNUC__
# define RB_DIGEST_DIAGNOSTIC(compiler, op, flag) _Pragma(STRINGIZE(compiler diagnostic op flag))
# ifdef RBIMPL_WARNING_IGNORED
# define RB_DIGEST_WARNING_IGNORED(flag) RBIMPL_WARNING_IGNORED(flag)
# elif defined(__clang__)
# define RB_DIGEST_WARNING_IGNORED(flag) RB_DIGEST_DIAGNOSTIC(clang, ignored, #flag)
# else /* __GNUC__ */
# define RB_DIGEST_WARNING_IGNORED(flag) RB_DIGEST_DIAGNOSTIC(GCC, ignored, #flag)
# endif
RB_DIGEST_WARNING_IGNORED(-Wdeprecated-declarations)
/* Suppress deprecation warnings of MD5 from Xcode 11.1 */
/* Although we know MD5 is deprecated too, provide just for backward

View File

@ -3,6 +3,7 @@
#include <ruby/ruby.h>
#include "../digest.h"
#include "../defs.h"
#if defined(MD5_USE_COMMONDIGEST)
#include "md5cc.h"
#else