Attributes usage is limited to a given set of authorized attributes. This rule raises an issue for any attribute other than:
eventhighleftlengthlowrangeright
This list can be changed through the allowedAttributes parameter.
architecture rtl of top is type state_type is (Init, Hold, Strobe, Read, Idle); variable V: state_type := state_type’val(2); -- Noncompliant: "val" is not allowed begin end;
architecture rtl of top is type bit_array is array (15 downto 0) of bit; variable my_var : integer := bit_array’left(bit_array’range); -- Compliant: "left" is allowed begin end;