Forum Discussion
Hi,
The problem at line 28 variable data_v : std_logic_vector(size-1 downto 0); where the size can't fetch a proper value which cause the unconstrained array type issue.
At lines 11 and 27:
pure function from_my_bool_a(data : in my_bool_at; size : in integer) return std_logic_vector
swap the data : in my_bool_at and size : in integer like below:
pure function from_my_bool_a(size : in integer; data : in my_bool_at) return std_logic_vector;
The synthesis will pass.
Thanks,
Regards,
Sheng
Thanks for the workaround. But I'm afraid I cannot apply it in my case.
Almost all types in my project and the conversion functions like from_my_bool_a are generated by a code generation tool. So I cannot simply change the parameter order.
BTW: The same code works flawlessly with Quartus 22.1 Standard. That is why I am suspecting a problem with the compiler.