Applies To:
  • CitectSCADA 6.xx
  • CitectHMI 6.xx


What does "Argument with default found before argument with no default" compile warning means? What can be done to get around it? Or how to get rid of that warning? 


The compile warning may show up when you have a cicode function which requires/takes in some values in the arguments and you have specifiy some default value for the arguments.

The warning will only comes up if there is one or more argument WITHOUT default value located AFTER the argument with default value (i.e. There should not be an argument without a default value to the next to the previous argument with default value).

Example of the cases which the warning will shows up:

MyFunction (int iTag = 35, int iTag2, int iTag3)          --> NO WARNING

MyFunction (int iTag, int iTag2 = 20, int iTag3)          --> WARNING will show up

MyFunction (int iTag, int iTag2 = 20, int iTag3 = 40)   --> NO WARNING

At the moment, there is no quick workaround to avoid that warning to come out if you happen to a function which the specified default arguments will produce such warnings. Alternatively, you can re-arrange your arguments to avoid the warning to come out.