Открыл для себя, что LIMITED-типы могут расширяться, в рамках одного модуля.
Это правильно.

В Сообщении о языке этого не вижу:

> -- Цитата:
> Переменные записевого типа, имеющего атрибут LIMITED, могут размещаться [allocated] только внутри того модуля, где описан данный тип. Ограничение применимо как к стати­ческому размещению посредством описания переменных (гл. 7), так и к динамическому размещению с помощью стандартной процедуры NEW (10.3).Записевый тип, помеченный как ABSTRACT или EXTENSIBLE, допускает расширенное переопределение, т.е. можно определить новый записевый тип как расширение такого типа.

Это указано в документах "Что нового в Компонентном Паскале?" в табличке этих новых атрибутов, под сноской-звёздочккой.
И в "3 Приёмы проектирования в Блэкбоксе".

> -- Цитата:
> Компонентный Паскаль превосходит Java в нескольких других языковых конструктах. Один является ограниченными [limited] записями. Это записи, которые могут быть расширены и размещены только внутри описывающего их модуля.