Цитата:
Сообщение от
kashperuk
Возможно это связано с тем, что используется операция смещения (к примеру, в fieldId2ext), и при входе в другую функцию смещение каким-то образом выносит нас за пределы области видимости.
Извиняюсь, я немножко неправ насчёт литеральной константы в val = common.(fieldId2Ext(fieldId, k)).
Если сделать, например, val = common.(fieldId2Ext(2, k)), то в отладчике действительно возникает ошибка, связанная со смещением (см. рисунок).
Но если на время абстрагироваться от индексов массива и облегчить этот оператор путем придания ему вида: val = common.(fieldId),
то:
val = common.(fieldId) - не работает
а
val = common.(2) - работает...