У меня есть следующий код:Почему неограниченный вектор констант в GHDL не считается статическим?
entity test is
end entity;
architecture rtl of test is
type T_TUPLE is record
A : NATURAL;
B : NATURAL;
end record;
type T_VECTOR is array (NATURAL range <>) of T_TUPLE;
constant LIST : T_VECTOR := ((8, 32), (8, 20), (8, 36));
begin
genTests : for i in LIST'range generate
constant LOCAL_A : NATURAL := LIST(i).A;
constant LOCAL_B : NATURAL := LIST(i).B;
begin
-- my tests
end generate;
end architecture;
Я получаю следующее сообщение об ошибке для моего генерировать заявление:
... диапазон должен быть статический дискретный диапазон
Когда я изменить мою постоянную на ограниченный вариант, она работает ...
constant LIST : T_VECTOR(0 to 2) := ((8, 32), (8, 20), (8, 36));
Почему пример более статичен?
Edit:
Ссылка на GHDL Issue discussion на GitHub.
Стоит спросить Тристана, я думаю. –