Здравствуйте, indian, Вы писали:
I>В определённый момент перестали компилироваться *.cpp файлы проекта (WTL). Вылетают на строках с assert'ами I>_ASSERTE (s_sizeBoxMargin .cx == s_sizeBoxMargin .cy); I>Компилятор (VC 7.1) выдаёт ошибку: I>.cpp(1008) : fatal error C1055: compiler limit : out of keys I>Причём ругается на все ассерты из срр файла. А на заголовочные файлы (*.h) в той же единице компиляции не обращает внимания. Причём если ругается на один файл, то другие спокойно компилируются... I>В чём может быть проблема?
Хм, что-то часто стал появляться этот вопрос.
1) Попробуй Rebuild All
2) If you are getting error C1055: compiler limit : out of keys on MS VisualC, try change /ZI (Program database for edit and continue) to /Zi (Program database).
3) Поэксперементируй с заголовками. Если есть stdafx.h, выкинь его (конкретно для этого файла). Если нет — добавь. Выкинь ненужные заголовки.
4)If the compiler emits the error C1055: compiler limit : out of keys, try disabling the option /Gm (Enable Minimal Rebuild.) In these cases, it is also beneficial to split the project into smaller subprojects.
Порылся на RSDN и google, похоже чаще всего решает проблему пункт 2 и 4.
Правильно работающая программа — просто частный случай Undefined Behavior