Я не могу действительно ответить , что происходит с конкретным набором вещей , так что ошибок неисчислимо, но помните, что в C ++ возможно самая сложная грамматика , известная человеку ,
Частью работы компилятора является информирование пользователя о том, что неправильно с определенным вводом, что он недопустим (или в случае предупреждений, хорош) C ++.
Вы можете получить экспоненциальный рост количества сообщений об ошибках, когда у вас есть рекурсивная неоднозначность, так как компилятор сообщит вам о наборе вещей, которые может означать . Предположим, что ?
может означать A
или B
, ???
может быть любым из AAA
, AAB
, ABA
, ABB
, BAA
, BAB
, BBA
или BBB
.
Компилятор знает только, что 100000000-е почти повторение не важно для вас , когда вы говорите это с помощью --fmax-error
.