blob: de812d27bafb95b4d7e794956320892f2ffb6bfd [file] [log] [blame]
clang 3.9 add this warning to rightly flag undefined
behavior, we relegate this to be just a warning instead
of error and keep the behavior as it was. Right fix would
be to not pass enum to the function with variadic arguments
as last named argument
Fixes errors like
ocsp.c:2220:22: error: passing an object that undergoes default argument promotion to 'va_start' has undefined behavior [-Werror,-Wvarargs]
va_start(ap, responseType0);
^
ocsp.c:2200:43: note: parameter of type 'SECOidTag' is declared here
SECOidTag responseType0, ...)
see
https://www.securecoding.cert.org/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start
for more details
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
Index: nss-3.37.1/nss/coreconf/Werror.mk
===================================================================
--- nss-3.37.1.orig/nss/coreconf/Werror.mk
+++ nss-3.37.1/nss/coreconf/Werror.mk
@@ -56,7 +56,7 @@ ifndef WARNING_CFLAGS
ifdef CC_IS_CLANG
# -Qunused-arguments : clang objects to arguments that it doesn't understand
# and fixing this would require rearchitecture
- WARNING_CFLAGS += -Qunused-arguments
+ WARNING_CFLAGS += -Qunused-arguments -Wno-error=varargs
# -Wno-parentheses-equality : because clang warns about macro expansions
WARNING_CFLAGS += $(call disable_warning,parentheses-equality)
ifdef BUILD_OPT