Мне проще сначала убедиться
type
someclass = class
procedure genproc<T>(var x, y: T);
begin
end;
procedure Test(A, b: integer);
begin
genproc(a, b);
end;
end;
begin
end.
Первая компиляция - внутренняя ошибка Вторая компиляция - внутренняя ошибка Третья компиляция - внутренняя ошибка Многократное нажатия клавиши F9- вообще зацикливание основного потока. Пора бы внедрить в среду АвтоДамп. Но это лечится с помощью self…
Потому, что PNG-файлы не компилируются.А как насчет, например, выложить текст программы вместо скрина? ^^ И как насчет выложить текст ошибки вместо, гхм, того, что там есть?
Ваш пример работает. Переинсталлируйте Паскаль и попробуйте повторно.
Если не заработает - присылайте внутреннюю ошибку.
После обновления Pascal ABC Net до 3.0 сборка 1164
для любой программы выводится ошибка "() : Ошибка чтения PCU файла ‘C:\PABCWork.NET__RedirectIOMode.pcu’"
Обновление было произведено, потому что перестал работать модуль GraphABC.
В результате перестало работать вообще все. Как жить дальше?
Удалите файл C:\PABCWork.NET__RedirectIOMode.pcu
@Lucky_Man кроме скриншота нужно публиковать полный текст, чтобы можно было проверить (включая SumLengths
).
Да, это ошибка в PCU. Будем исправлять. Пока:
- Удалите pcu
- Поставьте в модуле директиву {$savepcu false}
- Запустите основную программу.
Должно работать
Ошибка исправлена. Новая версия - на сайте.
Странная ошибка в нулевой строке в обеих программах. Думаю, такого быть не должно.
procedure f(name: 'my.txt');
begin
end;
begin
end.
begin
var name: 'my.txt';
end.
Вы же нарушаете синтаксис языка. После имени переменной name и двоеточия должен идти тип переменной, а у Вас указан литерал. Компилятор как бы хочет сказать, что используется переменная с неописанным типом, но точно не знает, где происходит это “неописание”.
Нарушаю. И хочу видеть внятное сообщение об ошибке с указанием номера строки, как это было в прошлых версиях на подобных ошибках.
Что-то поломалось?
Исправили сообщение об ошибке