A regular expression of the form "something, question mark, range or Unicode chars" is not parsed correctly. As seen in the example: https://gcc.godbolt.org/z/41ea8anqT * `[\p{L}]+|[\p{N}]+` - works * ` ?\p{L}+| ?\p{N}+` - works * ` ?[\p{L}]+| ?[\p{N}]+` - doesn't compile even though it's valid