If a parameter is missing, a default value can be assigned.But if the list itself is missing, an error will happen.Changing the macro to1#defineDEFAULT_PARAM(INDEX,name,DEF_VALUE) \
2private#NAME; \
3name = [RETNIL(_this), INDEX, DEF_VALUE] callCBA_fnc_defaultParam; \
4TRACE_3("DEFAULT_PARAM",INDEX,name,DEF_VALUE)
will help solving the issue.