Revert "[FIRRTL] Verify FModuleLike's have unique port names." #3976
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.
Reverts #3891, until have better fix for #3968 .
Conflicts in this way are not quite invalid FIRRTL per spec ($ vs _) and it seems to be expected to "work" in some designs. FWIW SFC has tests for handling this sort of lowering conflict specifically. Neither compiler does what the spec says re:"$" however which would avoid the conflict here.
These duplicate names will be resolved/legalized before verilog emission.
They should not be trusted until that point (similarly wires and regs and other namable things), and the way the conflicts are resolved should not be relied upon (at best implementation-defined behavior).
This sort of conflict is likely a problem if occurs on public/top module or extmodule-- that is, where used in contexts where the lowered names need to be reliably referenced from the outside.
Anyway until have better story for all this let's not error out.