Subprogram Body Rules
subprogram_body_201
This rule checks for a blank line below the is keyword.
This rule allows the begin keyword to occupy the blank line:
function overflow (a: integer) return integer is
begin
Refer to Configuring Blank Lines for more information.
Violation
function overflow (a: integer) return integer is
constant width : integer := 32;
begin
Fix
function overflow (a: integer) return integer is
constant width : integer := 32;
begin
subprogram_body_202
This rule checks for blank lines above the begin keyword.
This rule allows the is keyword to occupy the blank line:
function overflow (a: integer) return integer is
begin
Refer to Configuring Blank Lines for more information.
Violation
function overflow (a: integer) return integer is
constant width : integer := 32;
begin
Fix
function overflow (a: integer) return integer is
constant width : integer := 32;
begin
subprogram_body_203
This rule checks for a blank line below the begin keyword.
Refer to Configuring Blank Lines for more information.
Violation
function overflow (a: integer) return integer is
begin
a <= b;
Fix
function overflow (a: integer) return integer is
begin
a <= b;
subprogram_body_204
This rule checks for blank lines above the end keyword.
Refer to Configuring Blank Lines for more information.
Violation
begin
a <= b;
end function overflow;
Fix
begin
a <= b;
end function overflow;
subprogram_body_205
This rule checks for a blank line below the end of the function declaration.
Refer to Configuring Blank Lines for more information.
Violation
function overflow (a: integer) return integer is
end;
signal wr_en : std_logic;
Fix
function overflow (a: integer) return integer is
end;
signal wr_en : std_logic;
subprogram_body_400
This rule checks the alignment of the <= and := operators over consecutive sequential assignments in subprogram bodies.
Following extra configurations are supported:
if_control_statements_ends_group
,case_control_statements_ends_group
.case_keyword_statements_ends_group
.loop_control_statements_ends_group
,
Refer to Configuring Keyword Alignment Rules for information on changing the configurations.
Violation
wr_en <= '1';
rd_en <= '0';
v_variable := 10;
Fix
wr_en <= '1';
rd_en <= '0';
v_variable := 10;
subprogram_body_401
This rule checks the colons are in the same column for all attribute specifications.
Refer to Configuring Keyword Alignment Rules for information on changing the configurations.
Violation
attribute mark_debug of wr_en : signal is "true";
attribute mark_debug of almost_empty : signal is "true";
attribute mark_debug of full : signal is "true";
Fix
attribute mark_debug of wr_en : signal is "true";
attribute mark_debug of almost_empty : signal is "true";
attribute mark_debug of full : signal is "true";