Skip to content

aggregate as target does not flag when the same elements are assigned #198

Open
@luscheller

Description

@luscheller

The following form of aggregate

(b, b) <= a

is illegal but not flagged by the language server. This should be pretty easy to detect.

Minimal reproducible example:

entity test is
end entity test;

architecture rtl of test is
    signal a: bit_vector(1 downto 0);
    signal b: bit;
begin
    (b, b) <= a;
end architecture;

LRM 10.5.2.1:

It is an error if a given signal or any subelement [of the assignment statement] is identified as a target by more than one element association in [...] an aggregate

Metadata

Metadata

Assignees

No one assigned

    Labels

    VHDLRelates to the language front-end for VHDL

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions