diff --git a/compiler2/encdec.c b/compiler2/encdec.c
index ee048f56e3c9805b4982b388dc556ae68ba614e4..8938b4c6d235710ab06a7e6f1c3b1157b97345fb 100644
--- a/compiler2/encdec.c
+++ b/compiler2/encdec.c
@@ -96,7 +96,7 @@ void def_encdec(const char *p_classname,
      " TTCN_Buffer& p_buf, TTCN_EncDec::coding_t p_coding, ...) const\n"
      "{\n"
      "  va_list pvar;\n"
-     "  va_start(pvar, p_coding);\n"
+     "  va_start(pvar, (int)p_coding);\n"
      "  switch(p_coding) {\n"
      "  case TTCN_EncDec::CT_BER: {\n"
      "    TTCN_EncDec_ErrorContext ec(\"While BER-encoding type"