Maximum Recursion
Property of the ScriptLine : Pre-Processing.
In the Unicode version of Q++ Studio, this property is one of the options of the Generation Options property.
Whenever Q++ evaluates a token it keeps track of the number of levels of recursion used. Whenever that number reaches the value of the Maximum Recursion property, the processing of the token is stopped and a run-time error message is generated.
•Most tokens get converted with a recursion level of 0 (zero). The token comes in and is replaced by text that does not contain tokens. For example, [a1Dddd] may get converted to Monday.
•However, sometimes, a conversion functions must evaluate included tokens immediately because the original token's date cannot be used for these included tokens. This is the case for Duration Tokens and MiniCalendar Tokens. This is usually a sign that you are replacing a token by the same token, either in the Multi-Holidays surrounding text or the Moon Options. In these cases the recursion level of the conversion function calling itself can increase.
The default value for this property, 50, should be more than enough in all cases. If necessary, this value can be increased to 500, but it is not recommended as it can cause a stack overflow, and most of the time you will not need to change the value of this property.