Expand to N comma-separated invocations of MACRO(x), where x in each invocation is the next number in the sequence from 1 to N. If N is 0, then the expansion is empty. For example BSLS_MACROREPEAT_COMMA(3, XYZ) expands to XYZ(1), XYZ(2), XYZ(3). The behavior is undefined unless N is a decimal integer (or is a macro that expands to a decimal integer) in the range 0 to 20. Note that MACRO is typically a macro with one argument, but may also be a function or functor.
Declared in <bsls_macrorepeat.h>
#define BSLS_MACROREPEAT_COMMA(N, MACRO)