> could rule such explanations out because, when I use this instead: > > bool b=re->FullMatch(*(szargs+2), > (n>0?&s[0]:NULL_RE_ARG), > (n>1?&s[1]:NULL_RE_ARG)); > > ... the matched strings are written in the two PP variables.
I did not understand your preceding note. I agree that if the above works, then the problem is with the treatment of NULL to indicate missing argument. Rather than futz around with this, I would say just go with the case statement.
