Function Rules¶
function_001¶
This rule checks the indentation of the function keyword.
Violation
architecture RTL of FIFO is
function overflow (a: integer) return integer is
function underflow (a: integer) return integer is
begin
Fix
architecture RTL of FIFO is
function overflow (a: integer) return integer is
function underflow (a: integer) return integer is
begin
function_002¶
This rule has been merged into function_100.
function_003¶
This rule has been merged into function_100.
function_004¶
This rule checks the begin keyword has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
function overflow (a: integer) return integer is
BEGIN
Fix
function overflow (a: integer) return integer is
begin
function_005¶
This rule checks the function keyword has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
FUNCTION overflow (a: integer) return integer is
Fix
function overflow (a: integer) return integer is
function_006¶
This rule checks for blank lines or comments above the function keyword.
Refer to Configuring Previous Line Rules for more information.
Violation
architecture RTL of FIFO is
function overflow (a: integer) return integer is
Fix
architecture RTL of FIFO is
function overflow (a: integer) return integer is
function_007¶
This rule has been moved to rule subprogram_body_205.
function_008¶
This rule checks the indent of function parameters on multiple lines.
Violation
function func_1 (a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic) return integer is
begin
end;
Fix
function func_1 (a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic) return integer is
begin
end;
function_009¶
This rule checks for a function parameter on the same line as the function keyword when the parameters are on multiple lines.
Violation
function func_1 (a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic) return integer is
begin
end;
Fix
function func_1 (
a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic) return integer is
begin
end;
function_010¶
This rule checks for consistent capitalization of function names.
Violation
architecture rtl of fifo is
function func_1 ()
begin
OUT1 <= Func_1;
PROC1 : process () is
begin
sig1 <= FUNC_1;
end process;
end architecture rtl;
Fix
architecture rtl of fifo is
function func_1 ()
begin
OUT1 <= func_1;
PROC1 : process () is
begin
sig1 <= func_1;
end process;
end architecture rtl;
function_012¶
This rule checks the colons are in the same column for all declarations in the function declarative part.
Refer to Configuring Keyword Alignment Rules for information on changing the configurations.
Violation
variable var1 : natural;
variable var2 : natural;
constant c_period : time;
Fix
variable var1 : natural;
variable var2 : natural;
constant c_period : time;
function_013¶
This rule checks the end keyword has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
END;
End function foo;
Fix
end;
end function foo;
function_014¶
This rule checks the function keyword in the end function has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
end FUNCTION;
end Function foo;
Fix
end function;
end function foo;
function_015¶
This rule checks the identifiers for all declarations are aligned in the function declarative part.
Refer to Configuring Identifier Alignment Rules for more information.
Violation
variable var1 : natural;
signal sig1 : natural;
constant c_period : time;
Fix
variable var1 : natural;
signal sig1 : natural;
constant c_period : time;
function_016¶
This rule checks the indent of return statements in function bodies.
Violation
function func1 return integer is
begin
return 99;
return 99;
end func1;
Fix
function func1 return integer is
begin
return 99;
return 99;
end func1;
function_017¶
This rule checks the function designator has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
function OVERflow (a: integer) return integer is
Fix
function overflow (a: integer) return integer is
function_100¶
This rule checks for a single space between the following function elements: function keyword, function designator, open parenthesis, close parenthesis, return keyword, return type and is keyword.
Refer to Configuring Whitespace Rules for options on changing the number of whitespaces..
Violation
function overflow (a: integer) return integer is
Fix
function overflow (a: integer) return integer is
function_101¶
This rule checks for a single space between the end and function keywords and function designator.
Refer to Configuring Whitespace Rules for options on changing the number of whitespaces..
Violation
end function overflow;
end function;
end overflow;
Fix
end function overflow;
end function;
end overflow;
function_201¶
This rule has been moved to rule subprogram_body_201.
function_202¶
This rule has been moved to rule subprogram_body_202.
function_203¶
This rule has been moved to rule subprogram_body_203.
function_204¶
This rule has been moved to rule subprogram_body_204.
function_300¶
This rule checks the indent of the closing parenthesis if it is on its own line.
Violation
function func_1 (a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic
) return integer is
Fix
function func_1 (a : integer; b : integer;
c : unsigned(3 downto 0);
d : std_logic_vector(7 downto 0);
e : std_logic
) return integer is
function_502¶
This rule checks the is keyword has proper case.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
function overflow (a: integer) return integer IS
Fix
function overflow (a: integer) return integer is
function_506¶
This rule checks the function designator has proper case on the end function declaration.
Refer to Configuring Uppercase and Lowercase Rules for more information.
Violation
end function OVERFLOW;
Fix
end function overflow;