12 сообщений перенесены в тему Болталка PascalABC.NET
Она проявилась в нашем проекте, но только при использовании PascalABC.NET. Она - лежит на стороне компилятора, для которого затруднительно “разбирать” partial-классы, ещё и вложенные. Как исправлять - дело команды PascalABC.NET, наше - сообщать о том, что такие проблемы существуют.
Кроме того, обращу внимание на данную Issue:
В ней от выявителя ошибки минимальный код не требовался. Почему такое требование предъявляется к другим пользователям - неясно. Либо требуем от всех, либо ни от кого, почему такая избирательность?
Тогда всё хорошо. Но, как я понимаю, у Вас последняя версия. А у меня была не последняя на тот момент. У меня не работало в 3.5.1.2277
. Где это было исправлено? В Что нового - не видел по этому поводу заметок. Как понять, когда обновляться? На официальном сайте не даётся ссылок на Issue
, чтобы потом перейти на GitHub
и посмотреть изменения. В Visual Studio
, например, сделаны уведомления по поводу выхода новой версии (не сборки).
type
MyString = class
static function operator implicit(s: string): MyString := new MyString;
end;
begin
var s: MyString := 'abcde';
end.
Реально ли сделать так, чтоб это работало?
Увидел. Напишите Issue
Исправили
Раз sizeof
теперь считается всегда на этапе компиляции, как насчёт разрешить это?
uses System.Runtime.InteropServices;
type
[StructLayout(LayoutKind.&Explicit, Size = sizeof(integer) + 50)]
r1 = record
[FieldOffset(0)] i1: integer;
[FieldOffset(sizeof(integer))] str: byte; // статичная строка на 49 символов
end;
begin end.
Было бы очень полезно в кодогенераторах OpenCL
и OpenGL
.
Это как? Скриптами?
Как в Visual Studio. Там отладка работает и в консольных приложениях
Но настраивается все из оболочки ведь. Какой смысл в том, чтобы делать отладку в консоли? По-моему это такая долботня будет, а насколько востребовано?
Не забывайте что @Kotov - лорд псевдографики. А псевдографику в связке с оболочкой не настроишь.
Ну а конкретно почему он написал - посимвольный ввод. То есть без Enter между символами и с моментальной реакцией на нажатие.
Да не. Просто оболочка падает от методов типа Console.SetCursorPosition.
Ну для меня ни насколько, я на паскале уже ничего серьёзного не пишу. Просто интересно, будет ли. Ведь сейчас отладка нормально работает с формами, WPF и прочими, а с консолью падает из-за методов, которые обращаясь к WIN API должны иметь указатель на консольное окно.
Я реально не знаю, какому проценту пользователей это нужно. Но то, что оно отвлечет силы разработчиков от массы проблем, которые важно и нужно решать - это наверняка.
Ровно такому же, какому вообще нужна отладка. Не только консольные методы падают, например стандартные .NET’овские типы для воспроизведения мультимедиа тоже падают в оболочке (в шарпе тоже в оболочке всё это падает, но там есть нормальная отладка консольных приложения).