Loop Statement Rules¶
loop_statement_001¶
This rule checks for code after the loop keyword.
Violation
loop a <= b;
Fix
loop
a <= b;
loop_statement_002¶
This rule checks the end keyword is on it’s own line.
Violation
loop
a <= b; end loop;
Fix
loop
a <= b;
end loop;
loop_statement_003¶
This rule checks the end keyword is on the same line as the end loop keyword.
Violation
end
loop;
Fix
end loop;
loop_statement_004¶
This rule checks the semicolon is on the same line as the end loop keyword.
Violation
end loop
;
end loop LOOP_LABEL
;
Fix
end loop;
end loop LOOP_LABEL;
loop_statement_005¶
This rule checks the loop label and the while, for or loop keywords are on the same line.
Violation
LOOP_LABEL:
loop
LOOP_LABEL:
while condition loop
LOOP_LABEL:
for x in range(15 downto 0) loop
Fix
LOOP_LABEL: loop
LOOP_LABEL: while condition loop
LOOP_LABEL: for x in range(15 downto 0) loop
loop_statement_006¶
This rule checks that loop statements have a label.
Violation
loop
while (condition) loop
for x in range (31 downto 0) loop
Fix
LOOP_LABEL : loop
LOOP_LABEL : while (condition) loop
LOOP_LABEL : for x in range (31 downto 0) loop
loop_statement_007¶
This rule checks the end loop_statement line has a label. The closing label will be added if the opening loop_statement label exists.
Refer to the section Configuring Optional Items for options.
Violation
end loop;
Fix
end loop LOOP_LABEL;
loop_statement_100¶
This rule checks that a single space exists between the end and loop keywords
Violation
end loop;
end loop;
Fix
end loop;
end loop;
loop_statement_101¶
This rule checks for a single space before the ending loop label if it exists.
Violation
end loop END_LOOP_LABEL;
Fix
end loop END_LOOP_LABEL;
loop_statement_102¶
This rule checks for a single space before the loop keyword.
Violation
for x in (0 to 30)loop
for x in (0 to 30) loop
Fix
for x in (0 to 30) loop
for x in (0 to 30) loop
loop_statement_103¶
This rule checks if a label exists that a single space exists between the label and the colon.
Violation
label: for index in 4 to 23 loop
label : for index in 0 to 100 loop
Fix
label : for index in 4 to 23 loop
label : for index in 0 to 100 loop
loop_statement_104¶
This rule checks if a label exists that a single space exists after the colon.
Violation
label : for index in 4 to 23 loop
label : for index in 0 to 100 loop
Fix
label : for index in 4 to 23 loop
label : for index in 0 to 100 loop
loop_statement_200¶
This rule checks for blank lines or comments above loop statements.
Refer to the section Configuring Blank Lines for options regarding comments.
The default style is no_code
.
Violation
-- Comment
LOOP_LABEL : loop
wr_en <= wr_en;
LOOP_LABEL : loop
Fix
-- Comment
LOOP_LABEL : loop
wr_en <= wr_en;
LOOP_LABEL : loop
loop_statement_201¶
This rule checks for blank lines below the loop keyword.
Refer to Configuring Blank Lines for options.
Violation
loop
a <= b;
Fix
loop
a <= b;
loop_statement_202¶
This rule checks for blank lines or comments above the end keyword.
Refer to Configuring Previous Line Rules for options.
Violation
loop
a <= b;
end loop;
Fix
loop
a <= b;
end loop;
loop_statement_203¶
This rule checks for blank lines below the end loop keywords.
Refer to Configuring Blank Lines for options.
Violation
end loop;
a <= b;
Fix
end loop;
a <= b;
loop_statement_300¶
This rule checks the indentation of the loop keyword.
Violation
fifo_proc : process () is
begin
loop
end loop;
end process;
Fix
fifo_proc : process () is
begin
loop
end loop;
end process;
loop_statement_301¶
This rule checks the indentation of the loop label if it exists.
Violation
fifo_proc : process () is
begin
LOOP_LABEL : loop
end loop;
end process;
Fix
fifo_proc : process () is
begin
LOOP_LABEL : loop
end loop;
end process;
loop_statement_302¶
This rule checks the indentation of the end keyword.
Violation
fifo_proc : process () is
begin
for index in 4 to 23 loop
end loop;
end process;
Fix
fifo_proc : process () is
begin
for index in 4 to 23 loop
end loop;
end process;
loop_statement_500¶
This rule checks the loop keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
while (condition) LOOP
Fix
while (condition) loop
loop_statement_501¶
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
while (condition) loop
END loop;
Fix
while (condition) loop
end loop;
loop_statement_502¶
This rule checks the loop keyword has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
while (condition) loop
end LOOP;
Fix
while (condition) loop
end loop;
loop_statement_503¶
This rule checks the proper case of the label on a loop statement.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
LABEL : for index in 4 to 23 loop
Label : for index in 0 to 100 loop
Fix
label : for index in 4 to 23 loop
label : for index in 0 to 100 loop
loop_statement_504¶
This rule checks the proper case of the end label on a loop statement.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
end loop LABEL;
end loop Label;
Fix
end loop label;
end loop label;