Closed flyinged closed 1 year ago
Good Evening @flyinged,
I pushed an update for this to the issue-943
branch. When you get a chance could you check it out and let me know if it fixes the issue on your end.
Thanks,
--Jeremy
Hi @jeremiah-c-leary
I can confirm you that the changes fix the issue also on my side.
Thanks Alessandro
Environment WSL2 on Windows 10 Enterprise
vsg -h
returnsVHDL Style Guide (VSG) version: 3.14.0+zip.file
Describe the bug I had to disable rules concurrent_012 and concurrent_401 because they were messing up simple signal assignments
To Reproduce Use a test file (test.vhd in this example) containing the following code snippet:
Running the command
vsg -f test.vhd
I get the following output (line 91 is the 1st line of the snippet above):
According to the documentation, rule
concurrent_012
should "check the structure of multiline concurrent simple signal assignments that contain arrays". Since the reference assignment does not contain an array, the rule should not apply.If I the run:
vsg -f test.vhd --fix
The output is:
The fixed code is:
Given the code, the violation of
concurrent_011
is expected. It's not clear anyway, why the code won't be fixed, since the rule is configured withfixable: true
. The overall effect is that the unexpected application of ruleconcurrent_012
seems to cause the described violation of ruleconcurrent_011
.If I run:
vsg -f test.vhd -c test_config.yaml
with
test_config.yaml
containing a configuration that disables ruleconcurrent_012
, then I get the following result:and the following fixed code (starting line: 89):
Given the code, the violation of
concurrent_003
is also expected. Still not clear, why the code won't be fixed, since the rule is configured withfixable: true
. The overall effect seems in this case caused by ruleconcurrent_401
that also interprets the simple assignment as an assignment containing an array.If I run (on the original test.vhd file)
vsg -f test.vhd -c test_config.yaml --fix
with
test_config.yaml
containing a configuration that disables both ruleconcurrent_012
and ruleconcurrent_401
, then I get the following fixed code:That's what I originally expected.