From 8014a4d831c0cc5de50f94fa66271fbb9f8e1bd0 Mon Sep 17 00:00:00 2001 From: om-ghante Date: Sat, 18 Apr 2026 15:17:03 +0530 Subject: [PATCH] src: suppress c-ares deprecation warnings Suppress deprecation warnings for legacy c-ares APIs (ares_parse_*_reply, ares_get_servers_ports, ares_set_servers_ports) using compiler pragmas for Clang, GCC, and MSVC. A full migration to the modern replacement APIs (ares_dns_parse, ares_get_servers_csv, ares_set_servers_csv) is left as follow-up work. Fixes: https://github.com/nodejs/node/issues/52464 Signed-off-by: om-ghante --- src/cares_wrap.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc index 72f3d06fe07569..6d406e80c5d0ec 100644 --- a/src/cares_wrap.cc +++ b/src/cares_wrap.cc @@ -56,6 +56,19 @@ # define AI_V4MAPPED 0 #endif +// Suppress c-ares deprecation warnings. c-ares has deprecated many legacy +// APIs (ares_parse_*_reply, ares_get_servers_ports, ares_set_servers_ports, +// etc.) in favor of ares_dns_parse, ares_get_servers_csv, and +// ares_set_servers_csv. A full migration is tracked separately; this pragma +// silences the build warnings until that work is complete. +// TODO(omghante): Migrate to the replacement c-ares APIs. +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wdeprecated-declarations" +#elif defined(__GNUC__) +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#elif defined(_MSC_VER) +#pragma warning(disable : 4996) +#endif namespace node { namespace cares_wrap {