Procedure Call Rules

These rules handle procedure_call_statement and concurrent_procedure_call_statement productions.

procedure_call_001

phase_1 error structure

This rule checks for labels on procedure call statements. Labels on procedure calls are optional and do not provide additional information.

Violation

WR_EN_OUTPUT : WR_EN(parameter);

Fix

WR_EN(parameter);

procedure_call_002

phase_1 error structure

This rule checks for labels on concurrent procedure call statements. Labels on procedure calls are optional and do not provide additional information.

Violation

WR_EN_OUTPUT : WR_EN(parameter);

Fix

WR_EN(parameter);

procedure_call_003

phase_1 error structure

This rule checks the structure of procedure calls.

Refer to Configuring Procedure Call Statement Rules for more configuration options.

Violation

connect_ports(port_1 => data, port_2 => enable, port_3 => overflow, port_4 => underflow);

Fix

connect_ports(
  port_1 => data,
  port_2 => enable,
  port_3 => overflow,
  port_4 => underflow
);

procedure_call_100

phase_2 error whitespace

This rule checks for a single space between the following block elements: label, label colon, postponed keyword and the procedure name.

Refer to Configuring Whitespace Rules for options on changing the number of whitespaces..

Violation

procedure_label   :    postponed   WR_EN(parameter);

Fix

procedure_label : postponed WR_EN(parameter);

procedure_call_101

phase_2 error whitespace

This rule checks for a single space after the => operator in procedure calls.

Refer to Configuring Whitespace Rules for options on changing the number of whitespaces..

Violation

connect_ports(
  port_1 =>    data,
  port_2 =>enable,
  port_3 =>  overflow,
  port_4 => underflow
);

Fix

connect_ports(
  port_1 => data,
  port_2 => enable,
  port_3 => overflow,
  port_4 => underflow
);

procedure_call_300

phase_4 error indent

This rule checks the indent of the procedure_call label.

Violation

a <= b;

  procedure_label : WR_EN(parameter);

Fix

a <= b;

procedure_label : WR_EN(parameter);

procedure_call_301

phase_4 error indent

This rule checks the indent of the postponed keyword if it exists..

Violation

a <= b;

  postponed WR_EN(parameter);

Fix

a <= b;

postponed WR_EN(parameter);

procedure_call_302

phase_4 error indent

This rule checks the indent of the procedure name.

Violation

a <= b;

  WR_EN(parameter);

Fix

a <= b;

WR_EN(parameter);

procedure_call_400

phase_5 error alignment

This rule checks the alignment of multiline procedure calls.

Refer to Configuring Multiline Indent Rules for more information.

Violation

connect_ports(port_1, port_2, port_3,
      port_4, port_5,
                   port_6, port_7);

Fix

connect_ports(port_1, port_2, port_3,
              port_4, port_5,
              port_6, port_7);

procedure_call_401

phase_5 error alignment

This rule checks the alignment of => keywords in procedure calls.

Refer to Configuring Keyword Alignment Rules for information on changing the configurations.

Violation

connect_ports(
  port_1=> data,
  port_2 => enable,
  port_3    => overflow,
  port_4  => underflow
);

Fix

connect_ports(
  port_1 => data,
  port_2 => enable,
  port_3 => overflow,
  port_4 => underflow
);

procedure_call_500

phase_6 error case case_label

This rule checks the label has proper case.

Refer to Configuring Uppercase and Lowercase Rules for more information.

Violation

PROCEDURE_CALL_LABEL : WR_EN(parameter);

Fix

procedure_call_label : WR_EN(parameter);

procedure_call_501

phase_6 error case case_keyword

This rule checks the postponed keyword has proper case.

Refer to Configuring Uppercase and Lowercase Rules for more information.

Violation

POSTPONED WR_EN(parameter)

Fix

postponed WR_EN(parameter)