Как правильно задать имя переменной, находящейся в куче вложенных структур? Вот простой пример.
g1 group ! в оригинале - record файла l long end q queue,type g1 like(g1) end
Так работает:
g2 group q2 &q end CODE g2.q2.g1.l = 1
А так — нет, хотя скобки массива вроде правильно стоят:
g2 group,dim(2) q2 &q end CODE g2[1].q2.g1.l = 1 ! ERROR: field not found: g1
Что не так? Вообще-то Кларин компилятор очень не любит массивы рефералов!
А у тебя как раз получается такой массив. Так что, возможно, именно из-за этого он и ругается. А если тебе надо сделать что-то типа массива очередей, то самый простой вариант — делать не через массив а через очередь.
Т.е.:
FilesQue QUEUE RecsQue &Q END
Если нужен массив на два элемента — делай две записи. И т.д. Такой вариант будет работать и компилятор спокойно его пропустит.