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.
What are the reasons/motivation for this change?
Since #298, top module names that have characters not allowed in solver format identifiers can't be resolved in property lookup as the mangled and unmangled module name are compared. (See the added test case for an example.)
Explain how this is achieved.
Always mangle both sides in name comparisons.
If applicable, please suggest to reviewers how they can test the change.
I'm not sure if the change in 154 is needed, it seems to work for submodules even before this, it only fails if it's the top module. To be honest I'm a bit confused why it works in the other case, but don't have time to track down what's happening. As long as the mangling doesn't further change already-mangled names this should be safe, but this is yet another unspoken assumption in an already-fragile construction...