TMatchCollection;
with Matches[0] do
with Groups[0] do // <-- компилер ругается "E2036 Variable required"
var Test := Success;
end.
var Matches: TMatchCollection; with Matches[0] do with Groups do // <-- компилер ругается "E2036 Variable required" var Test := Success;
вот обрезаный вариат этих структур. если в TMatch использовать property Groups: TGroupCollection read FGroups; - то ошибок нет, а если property Groups: TGroupCollection read GetGroups; - то "E2036 Variable required"
Рекорды - это такие рекорды)
Только вопрос — почему?! В моём примере выше используется Get-функция, и всё ок.
Возможно, условная однопроходность не позволяет развернуть такую ситуацию, когда у нас не напрямую вызывается геттер с индексом, а получается некая потенциально бесконечная цепочка вызовов с дедукцией типа данных в конце и вызова геттера для последнего типа :-/
Обсуждают сегодня