Skip to content

Latest commit

 

History

History
251 lines (151 loc) · 3.93 KB

variable_assignment_rules.rst

File metadata and controls

251 lines (151 loc) · 3.93 KB

Variable Assignment Rules

variable_assignment_001

This rule checks the indent of a variable assignment.

Violation

proc : process () is
begin

    counter := 0;
count := counter + 1;

Fix

proc : process () is
begin

  counter := 0;
  count   := counter + 1;

variable_assignment_002

This rule checks for a single space after the assignment.

Violation

counter :=0;
count   :=     counter + 1;

Fix

counter := 0;
count   := counter + 1;

variable_assignment_003

This rule checks for at least a single space before the assignment.

Violation

counter:= 0;
count := counter + 1;

Fix

counter := 0;
count := counter + 1;

variable_assignment_004

This rule checks the alignment of multiline variable assignments.

Violation

counter := 1 + 4 + 10 + 25 +
     30 + 35;

Fix

counter := 1 + 4 + 10 + 25 +
           30 + 35;

variable_assignment_005

This rule has been deprecated and replaced with rule process_400.

variable_assignment_006

This rule checks for comments in multiline variable assignments.

Violation

counter := 1 + 4 + 10 + 25 +
           -- Add in more stuff
           30 + 35;

Fix

counter := 1 + 4 + 10 + 25 +
           30 + 35;

variable_assignment_007

This rule checks the structure of simple and conditional variable assignments.

Violation

wr_en :=
  '0' when q_wr_en = '1' else
         '1';

w_foo :=
  I_FOO when ((I_BAR = '1') and
                     (I_CRUFT = '1')) else
         '0';

Fix

wr_en := '0' when q_wr_en = '1' else
         '1';

w_foo := I_FOO when ((I_BAR = '1') and
                     (I_CRUFT = '1')) else
         '0';

variable_assignment_008

This rule checks the structure of multiline variable assignments that contain arrays.

Violation

wr_data := (0, 65535, 32768);

Fix

wr_data :=
(
  0,
  65535,
  32768
);

variable_assignment_400

This rule checks alignment of multiline conditional variable assignments.

Violation

wr_en := '0' when q_wr_en = '1' else
     '1';

w_foo := I_FOO when ((I_BAR = '1') and
         (I_CRUFT = '1')) else
         '0';

Fix

wr_en := '0' when q_wr_en = '1' else
         '1';

w_foo := I_FOO when ((I_BAR = '1') and
                     (I_CRUFT = '1')) else
         '0';

variable_assignment_401

This rule checks the alignment of multiline variable assignments that contain arrays.

Violation

wr_data :=
(
         0,
     65535,
     32768
  );

Fix

wr_data :=
(
  0,
  65535,
  32768
);