The main problem is that the regexp contains too many alternatives, and when applied to (usually long) text, it doesn't match what it tried to match.
In your case, this is a regular expression:
"\\([[:alnum:]-_]+\\)=\\({\\|\\[\\|\"\"\\|\"\\(?:[^\\\"]\\|\\\\.\\)*\"\\)"
Used by gdb-jsonify-buffer function.
This regex seems to be trying to match destinations. Basically, it maps the variable to the left of the = symbol and (part of) the expression to the right. One of the things that seems to match the regular expression is a string containing escaped quotes is always a warning sign, since Emacs provides much better methods for parsing strings.
The problem may arise because this regular expression is incorrect (so that it matches much more than your string), that your string is incorrect, or that your program simply contains a very large string.
I would suggest that you send an error report to the originator of this package. Make sure you include the text that caused the error.
Alternatively, you can try to fix this yourself. I would suggest that you replace the complex regular expression with a simpler regular expression that will find the beginning of the line. Then you can use, for example, (forward-sexp) to find the end of the line.
source share