diff --git a/xbob/learn/activation/activation.cpp b/xbob/learn/activation/activation.cpp
index 995761fe3d5c5de97f181ba6ed21de5a31480232..cbecd5580750935227020a0a314928405d83c54a 100644
--- a/xbob/learn/activation/activation.cpp
+++ b/xbob/learn/activation/activation.cpp
@@ -283,7 +283,7 @@ error otherwise.\n\
 static PyObject* PyBobLearnActivation_call(PyBobLearnActivationObject* self,
   PyObject* args, PyObject* kwds) {
 
-  Py_ssize_t nargs = args?PyTuple_Size(args):0 + kwds?PyDict_Size(kwds):0;
+  Py_ssize_t nargs = (args?PyTuple_Size(args):0) + (kwds?PyDict_Size(kwds):0);
 
   switch (nargs) {
 
@@ -335,7 +335,7 @@ error otherwise.\n\
 static PyObject* PyBobLearnActivation_f_prime(PyBobLearnActivationObject* self,
   PyObject* args, PyObject* kwds) {
 
-  Py_ssize_t nargs = args?PyTuple_Size(args):0 + kwds?PyDict_Size(kwds):0;
+  Py_ssize_t nargs = (args?PyTuple_Size(args):0) + (kwds?PyDict_Size(kwds):0);
 
   switch (nargs) {
 
@@ -387,7 +387,7 @@ error otherwise.\n\
 static PyObject* PyBobLearnActivation_f_prime_from_f
 (PyBobLearnActivationObject* self, PyObject* args, PyObject* kwds) {
 
-  Py_ssize_t nargs = args?PyTuple_Size(args):0 + kwds?PyDict_Size(kwds):0;
+  Py_ssize_t nargs = (args?PyTuple_Size(args):0) + (kwds?PyDict_Size(kwds):0);
 
   switch (nargs) {