summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe George <joe@zeroc.com>2024-09-24 10:42:34 -0400
committerGitHub <noreply@github.com>2024-09-24 10:42:34 -0400
commit5efb9f49ff41238b69e1a57f3dae01f2d62734cf (patch)
tree5dbeb67c0ae758c7846364a5ece6d8b1bdab21fd
parentFixed thread idle time bug (#2537) (diff)
downloadice-5efb9f49ff41238b69e1a57f3dae01f2d62734cf.tar.bz2
ice-5efb9f49ff41238b69e1a57f3dae01f2d62734cf.tar.xz
ice-5efb9f49ff41238b69e1a57f3dae01f2d62734cf.zip
Add support for Clang 16 (#2774)
-rw-r--r--config/Make.rules.Darwin3
-rw-r--r--cpp/include/Ice/OutgoingAsync.h16
2 files changed, 16 insertions, 3 deletions
diff --git a/config/Make.rules.Darwin b/config/Make.rules.Darwin
index e97883697cf..857a8ad0fda 100644
--- a/config/Make.rules.Darwin
+++ b/config/Make.rules.Darwin
@@ -35,7 +35,8 @@ endif
shared_cppflags = $(if $(filter-out program,$($1_target)),-fPIC) -fvisibility=hidden
cppflags = -Wall -Wextra -Wshadow -Wshadow-all -Wredundant-decls -Wno-shadow-field \
- -Wdeprecated -Wstrict-prototypes -Werror -Wconversion -Wdocumentation -pthread \
+ -Wdeprecated -Wstrict-prototypes -Werror -Wconversion -Wdocumentation -Wno-shadow-uncaptured-local \
+ -pthread \
$(if $(filter yes,$(OPTIMIZE)),-O2 -DNDEBUG,-g)
ifeq ($(MAXWARN),yes)
diff --git a/cpp/include/Ice/OutgoingAsync.h b/cpp/include/Ice/OutgoingAsync.h
index 29a51926bf8..e1bff8c76c1 100644
--- a/cpp/include/Ice/OutgoingAsync.h
+++ b/cpp/include/Ice/OutgoingAsync.h
@@ -19,8 +19,14 @@
#include <Ice/LocalException.h>
#include <Ice/UniquePtr.h>
-#ifndef ICE_CPP11_MAPPING
-# include <Ice/AsyncResult.h>
+#ifdef ICE_CPP11_MAPPING
+# ifdef __clang__
+# pragma clang diagnostic push
+ // See #2747
+# pragma clang diagnostic ignored "-Wshadow-uncaptured-local"
+# endif
+#else
+# include <Ice/AsyncResult.h>
#endif
#include <exception>
@@ -853,4 +859,10 @@ newCallback(T* instance,
#endif
+#ifdef ICE_CPP11_MAPPING
+# ifdef __clang__
+# pragma clang diagnostic pop
+# endif
+#endif
+
#endif