On 2013-10-22 20:44, Chris Hegarty wrote:
The SCTP native code complies with -Werror. gcc 4.8.1 reports unused parameters as warnings, and this causes the build to fail. gcc 4.8.1 is the defaul on Ubuntu 13.10.

An alternative solution is to keep the warning but fix the code.

The traditional solution is to cast the unused variable/parameter to void, typically accompanied with a comment describing why we keep it even though it is unused, e.g. something like
(void) klass; // this is a formal JNI parameter which we don't use

However, it can very well be argued if this is indeed better than just disabling the warning. After all, it's a question of how to balance different kinds of code quality. If we have a lot of places were formal parameters like this, it might lead to worse code quality by littering it with void casts.

I just wanted to point out an alternative, I'm not protesting against your solution.

/Magnus


These parameters are required as the functions are JNI functions. The simplest solution is to ignore/suppress these unused param warnings.

See discussion on:
http://mail.openjdk.java.net/pipermail/build-dev/2013-July/009513.html

diff --git a/makefiles/lib/NioLibraries.gmk b/makefiles/lib/NioLibraries.gmk
--- a/makefiles/lib/NioLibraries.gmk
+++ b/makefiles/lib/NioLibraries.gmk
@@ -150,7 +150,7 @@

   ifneq ($(OPENJDK_TARGET_OS), macosx)

-    SCTP_WERROR := -Werror
+    SCTP_WERROR := -Werror -Wno-error=unused-parameter
     ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
       SCTP_WERROR :=
     endif

With this change it may be possible to remove the special casing of ppc? I would need to check, but this could be handled separately.

-Chris.

Reply via email to