fix: compiler identifying imported functions as being part of a contract #1112
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.
…the module
Related issue(s)
Resolves #1111
Description
Summary of changes
Separates imported items in a module's scope from those originally defined within the module. Then we can use this separate list of items defined within the module to find all functions that should be part of the contract.
Previously we were using the module's scope which can include imported functions as well. I've separated these two constructs and made ModuleData more of an opaque wrapper to prevent this error in the future.
Dependency additions / changes
None
Test additions / changes
None
Checklist
cargo fmt
with default settings.Documentation needs
Additional context