library ieee; use ieee.std_logic_1164.all; entity issue is port ( clk : in std_logic ); end entity issue; architecture psl of issue is attribute anyconst : boolean; signal a: natural; attribute anyconst of a : signal is true; begin -- All is sensitive to rising edge of clk default clock is rising_edge(clk); -- works assume always a = 42; assert always a = 42; -- Error occurs when using a generate statement testG : if true generate signal b : natural; attribute anyconst of b : signal is true; begin -- works GEN_ASSUME : assume always b = 23; GEN_ASSERT : assert always b = 23; end generate testG; -- Same error occurs when using a block statement testB : block is signal c : natural; attribute anyconst of c : signal is true; begin -- works BLK_ASSUME : assume always c = 11; BLK_ASSERT : assert always c = 11; end block testB; end architecture psl;