quench clang warnings
diff --git a/include/pybind/pybind.h b/include/pybind/pybind.h
index de496fb..ecf06db 100644
--- a/include/pybind/pybind.h
+++ b/include/pybind/pybind.h
@@ -16,7 +16,7 @@
 #pragma warning(disable: 4996) // warning C4996: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name
 #pragma warning(disable: 4100) // warning C4100: Unreferenced formal parameter
 #pragma warning(disable: 4512) // warning C4512: Assignment operator was implicitly defined as deleted
-#elif defined(__GNUG__)
+#elif defined(__GNUG__) and !defined(__clang__)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wunused-but-set-parameter"
 #pragma GCC diagnostic ignored "-Wunused-but-set-variable"
@@ -818,7 +818,7 @@
 
 #if defined(_MSC_VER)
 #pragma warning(pop)
-#elif defined(__GNUG__)
+#elif defined(__GNUG__) and !defined(__clang__)
 #pragma GCC diagnostic pop
 #endif