if (c != left) {
putback();
return make_pair(false, string());
- } else
+ } else {
+ // a single '\' is only allowed within \verb, no matter what the delimiter is,
+ // for example "\verb+\+" (reported as bug #4468)
+ // To support this, we allow single '\' if it is the only character
+ // within equal delimiters
+ if (next_token().cat() == catEscape)
+ if (next_token().character() == right && right == left)
+ result += '\\';
while ((c = getChar()) != right && good()) {
// Ignore comments
if (curr_token().cat() == catComment) {
else
result += curr_token().asInput();
}
-
+ }
return make_pair(true, result);
}