Skip to content

architecture_601 case mismatch not reported and fixed in with/select statement #1448

@maltaisn

Description

@maltaisn

This file:

library ieee;
  use ieee.std_logic_1164.all;

entity b is
  port (
    aBc : in    std_logic;
    DeF : out   std_logic
  );
end entity b;

architecture a of b is

begin

  def <= ABC;   -- Fixed

  with ABC select def <=   -- Not fixed
    '0' when '1',
    '1' when '0',
    'X' when others;

end architecture a;

With the following rules:

rule:
  port_010:
    disable: yes

The case mismatch is reported and fixed in the assignment:

Phase 6 of 7... Reporting
Total Rules Checked: 877
Total Violations:    2
  Error   :     2
  Warning :     0
-------------------+------------+------------+--------------------------------------
  Rule             |  severity  |  line(s)   | Solution
-------------------+------------+------------+--------------------------------------
  architecture_601 | Error      |         15 | Port case mismatch:  Change def to DeF
  architecture_601 | Error      |         15 | Port case mismatch:  Change ABC to aBc
-------------------+------------+------------+--------------------------------------

but not in the with/select statement.

Metadata

Metadata

Labels

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions