From: christian.engstrom_at_[hidden]
Date: 2001-11-22 14:32:40


The following program will not compile with Microsoft Visual C++
version 6 for me:

#include <boost/regex.hpp>

void main() {

  char cstr[]("abcdef");

  boost::regex e("abc");
  boost::cmatch m;

  boost::regex_match(cstr, cstr + 3, m, e, boost::match_default);
}

The error message I get from the compiler is "error
C2661: 'regex_match' : no overloaded function takes 5 parameters".

I find this very odd, since both the documentation and the source
code in regex_match.hpp seem to suggest (to me at least) that the 5
parmeter variant of the call should always be available, even if some
of the "convenience versions" of the call may not be.

Is there something obvious that I have missed, or is this a problem
related to the VC6 compiler? If the latter is the case, what is the
best workaround?