diff --git a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
index 0c0d7a9d1b59e4a147a248d72b7a8d834d95dbc5..3633305b044460955bebfc9be668b3122832bcae 100644
--- a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
+++ b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
@@ -1131,7 +1131,10 @@ public class MappedSystemCTask {
         //code += "ParamType arg2__req" + SCCR;
         //code += "ParamType arg3__req" + SCCR;
         code += "ParamType rnd__0" + SCCR;
-        code += "TMLChannel* _channels[" + (channels.size() + events.size() + (task.isRequested() ? 1 : 0)) + "]" + SCCR;
+        int num = channels.size() + events.size() + (task.isRequested() ? 1 : 0);
+        if (num > 0) {
+          code += "TMLChannel* _channels[" + num + "]" + SCCR;
+        }
         return code;
     }