Я использую Delphi 2009. Моя программа компилируется и работает нормально.Я использую списки действий и встроил их в свою программу - хотя я давно их не менял.
Итак, сегодня я просто добавляю новое действие в свой список действий обычным образом, как это делается,Не делая ничего другого, я теперь собираю и запускаю свою программу и получаю следующую ошибку:
[DCC Fatal Error] Userface.pas (1): F2092 Программа или модуль 'Userface' рекурсивно использует себя.
Я ничего не сделал, чтобы изменить какие-либо условия использования.Я не могу найти ни одного экземпляра моего модуля Userface, вызывающего себя или вызывающего другой модуль, который вызывает Userface.Я размещаю потенциально рекурсивные вызовы в разделе «Реализация», как и должно быть.
Если я выйду из Delphi без сохранения, перестройки и запуска, он работает нормально.Если я снова попытаюсь добавить новое действие в список действий, снова произойдет фатальная ошибка.
Я не могу понять, что происходит.Я был бы признателен за любую помощь, чтобы выяснить, как обойти это.
Редактировать: После ответа Уве, я дважды проверил, чтобы убедиться, что это все еще происходит.Конечно же, я сделал это снова, как я описал в своем комментарии к Уве.После постройки это случилось снова.
... Но потом, случайно в меню «Проект», я пропустил выбор «Сборка» и выбрал «Компиляция».Скомпилировано нормально.Тогда я попытался построить, и теперь сборка работает правильно.Нет фатальной ошибки!Мне все снова кажется нормальным.
Если я попытаюсь добавить другое действие, а затем выполнить сборку, снова появится ошибка.Но если я скомпилирую, то смогу его успешно построить - так что, по крайней мере, у меня есть обходной путь.
Это должно быть своего рода сбой.Я не знаю, что случилось.Кто-нибудь знает, что это такое или почему это может происходить?
Продолжение.Как утверждает Марьян, это может произойти в других обстоятельствах, и одна из них произошла со мной.Так что, вероятно, это НЕ напрямую связано с добавлением действия, которое задает мой вопрос.
Тем не менее, для меня это относительно редкое событие, которое превратилось в незначительное раздражение.Возможно, это уже было исправлено в Delphi 2010, и мое окончательное решение будет при следующем обновлении до Delphi 2011 или 12 после добавления 64-разрядной или многоплатформенной версии.