Repository navigation
KNOWNBUG test for a port connected to an interface in a generate block - #2325
Merged
Merged
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues remain for this regression-test-only change documenting the named-generate interface connection bug.
No open issues 🎉
What changed in this PR
Adds a known-bug regression test for EBMC’s Verilog front end, documenting the failure to connect an interface port to an interface instance inside a named generate block. No production code changes are included.
Changes:
- Adds a parameterized interface connected through
G[0].a, with an assertion checking that the output matches the input. - Records the expected successful result and current “unknown identifier G” failure, explaining the dependencies on #2101 and #2186.
| File | Description |
|---|---|
| regression/verilog/interface/generate_block_port_connection1.sv | Reproduces the hierarchical interface port connection failure. |
| regression/verilog/interface/generate_block_port_connection1.desc | Marks the test as KNOWNBUG and documents expected behavior and prerequisites for a fix. |
Review effort: Balanced
An interface port connected to an interface instance inside a named generate block, .p(G[0].a), fails with "unknown identifier G". This KNOWNBUG should be tackled once both #2101 (hierarchical references into named generate blocks) and #2186 (interface ports take the parameters of the bound instance) have been merged. #2101 alone makes G[0].a work in expressions, but not as a port connection: the interface port actuals that #2186 resolves are plain identifiers only, and the scope symbols of named generate blocks that #2101 adds are created after the module instances have been parameterized. Co-authored-by: Kiro <kiro-agent@users.noreply.github.com>
tautschnig
force-pushed
the
kiro/knownbug-generate-interface-port
branch
from
November 3, 2026 09:59
40fa28c to
0d65c18
Compare
kroening
approved these changes
Nov 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New KNOWNBUG
interface/generate_block_port_connection1: an interface port connected to an interface instance inside a named generate block,leaf l(.p(G[0].a), ...), fails with "unknown identifier G".To be tackled once both #2101 and #2186 have been merged. #2101 (hierarchical references into named generate blocks) alone makes
G[0].awork in expressions, but not as a port connection: the interface port actuals that #2186 resolves are plain identifiers only, and the scope symbols of named generate blocks that #2101 adds are created after the module instances have been parameterized. Checked on main, main + #2101, and #2186/#2190 + #2101: the same error each time.