Действительно. [untagged] для записи не значит [untagged] для поля-массива.
## Код:
```
MODULE TestIndex;

  IMPORT  SYSTEM;

  VAR
    rec: RECORD [untagged]
      y: ARRAY 20 OF REAL;
    END;

  PROCEDURE T*;
    VAR  i: INTEGER;
  BEGIN
    (*rec.y[30] := 2;*)
    i := 30; rec.y[i] := 2;
  END T;

END TestIndex.

^Q TestAsm.T
```

А большой размер массива, похоже и сделан, чтобы при "Используется только POINTER TO этот RECORD" хватило для блоков "любого" размера и контроль не ругался.