I am using assertion macro from assert.h I have defined lambda to perform assertion checking.
int val1 = 0; int val2 = 1; const auto check = [val1,val2]()-&
The preprocessor is very simple, it sees all commas as argument separators.
So you can't use a macro if you pass in anything with a comma as argument to the macro.