diff --git a/contrib/fortran-to-opencl/translate.py b/contrib/fortran-to-opencl/translate.py
index 4476d4bc90c91fa868000a1591685438d9bd1ef0..a9dd33fdb56fa3d2de2b1b2c355693cb1b98275e 100644
--- a/contrib/fortran-to-opencl/translate.py
+++ b/contrib/fortran-to-opencl/translate.py
@@ -327,7 +327,12 @@ class ComplexCCodeMapper(CCodeMapperBase):
             from pymbolic.mapper.stringifier import PREC_PRODUCT, PREC_NONE
             real_prd = self.join_rec("*", reals, PREC_PRODUCT)
 
-            complex_prd = self.rec(complexes[0], PREC_NONE)
+            if len(complexes) == 1:
+                myprec = PREC_PRODUCT
+            else:
+                myprec = PREC_NONE
+
+            complex_prd = self.rec(complexes[0], myprec)
             for child in complexes[1:]:
                 complex_prd = "%s_mul(%s, %s)" % (
                         tgt_name, complex_prd,