Block Rules¶
block_001¶
This rule checks the block label and the block keyword are on the same line. Keeping the label and generate on the same line reduces excessive indenting.
Violation
block_label :
block is
Fix
block_label : block is
block_002¶
This rule checks for the existence of the is keyword.
Refer to the section Configuring Optional Items for options.
Violation
block_label : block
block_label : block (guard_condition)
Fix
block_label : block is
block_label : block (guard_condition) is
block_003¶
This rule checks the is keyword is on the same line as the block keyword.
Violation
block_label : block
is
Fix
block_labeel : block is
block_004¶
This rule checks the begin keyword is on it’s own line.
Violation
block is begin
Fix
block is
begin
block_005¶
This rule checks for code after the begin keyword.
Violation
begin a <= b;
Fix
begin
a <= b;
block_006¶
This rule checks the end keyword is on it’s own line.
Violation
a <= b; end block;
Fix
a <= b;
end block;
block_007¶
This rule checks the block label exists in the closing of the block statement.
Refer to the section Configuring Optional Items for options.
Violation
end block;
Fix
end block block_label;
block_100¶
This rule checks for a single space between the following block elements: label, label colon, block keyword, guard open parenthesis, guart close parenthesis, and is keywords.
Violation
block_label : block (guard_condition) is
block_label : block is
Fix
block_label : block (guard_condition) is
block_label : block is
block_101¶
This rule checks for a single space between the end and block keywords and label.
Violation
end block block_label;
Fix
end block block_label;
block_200¶
This rule checks for blank lines or comments above the block label.
Refer to Configuring Previous Line Rules for options.
Violation
a <= b;
block_label : block is
Fix
a <= b;
block_label : block is
block_201¶
This rule checks for a blank line below the block keyword.
Refer to the section Configuring Blank Lines for options regarding comments.
Violation
block_label : block is
constant width : integer := 32;
Fix
block_label : block is
constant width : integer := 32;
block_202¶
This rule checks for blank lines or comments above the begin keyword.
Refer to Configuring Blank Lines for options.
Violation
block_label block is
constant width : integer := 32;
begin
Fix
block_label block is
constant width : integer := 32;
begin
block_203¶
This rule checks for a blank line below the begin keyword.
Refer to the section Configuring Blank Lines for options regarding comments.
Violation
begin
a <= b;
Fix
begin
a <= b;
block_204¶
This rule checks for blank lines or comments above the end keyword.
Refer to Configuring Blank Lines for options.
Violation
begin
a <= b;
end block block_label;
Fix
begin
a <= b;
end block block_label;
block_205¶
This rule checks for a blank line below the semicolon.
Refer to the section Configuring Blank Lines for options regarding comments.
Violation
end block block_label;
a <= b;
Fix
end block block_label;
a <= b;
block_300¶
This rule checks the indent of the block label.
Violation
a <= b;
block_label : block is
Fix
a <= b;
block_label : block is
block_301¶
This rule checks the indent of the begin keyword.
Violation
block_label : block is
begin
Fix
block_label : block is
begin
block_302¶
This rule checks the indent of the end keyword.
Violation
block_label : block is
begin
end block block_label;
Fix
block_label : block is
begin
end block block_label;
block_400¶
This rule checks the identifiers for all declarations are aligned in the block declarative region.
Refer to the section Configuring Identifier Alignment Rules for information on changing the configurations.
Violation
variable var1 : natural;
constant c_period : time;
Fix
variable var1 : natural;
constant c_period : time;
block_401¶
This rule checks the colons are in the same column for all declarations in the block declarative part. Refer to the section Configuring Keyword Alignment Rules for information on changing the configurations.
Violation
signal sig1: natural;
variable var2 : natural;
constant c_period : time;
file my_test_input : my_file_type;
Fix
signal sig1 : natural;
variable var2 : natural;
constant c_period : time;
file my_test_input : my_file_type;
block_500¶
This rule checks the label has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
BLOCK_LABEL : block is
Fix
block_label : block is
block_501¶
This rule checks the block keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
block_label : BLOCK is
Fix
block_label : block is
block_502¶
This rule checks the is keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
block_label : block IS
Fix
block_label : block is
block_503¶
This rule checks the begin keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
block_label : block is
BEGIN
Fix
block_label : block is
begin
block_504¶
This rule checks the end keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
END block block_label;
Fix
end block block_label;
block_505¶
This rule checks the block keyword in the end block has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
end BLOCK block_label;
Fix
end block block_label;
block_506¶
This rule checks the label has proper case on the end block declaration.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
end block BLOCK_LABEL;
Fix
end block block_label;
block_600¶
This rule checks for valid suffixes on block labels. The default suffix is _blk.
Refer to the section Configuring Prefix and Suffix Rules for information on changing the allowed suffixes.
Violation
block_label : block is
Fix
block_label_blk : block is
block_601¶
This rule checks for valid prefixes on block labels. The default prefix is blk_.
Refer to the section Configuring Prefix and Suffix Rules for information on changing the allowed prefixes.
Violation
block_label : block is
Fix
blk_block_label : block is