Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Import resolver should be capable of resolving also methods and constructors #6729

Open
2 tasks
Akirathan opened this issue May 17, 2023 · 1 comment
Open
2 tasks
Assignees
Labels
-compiler s-research-needed Status: the task will require heavy research to complete x-new-feature Type: new feature request x-on-hold

Comments

@Akirathan
Copy link
Member

Akirathan commented May 17, 2023

ImportResolver is incapable of resolving symbols within from ... import symbol_1, symbol_2, ... statements. We should provide another compiler step to resolve these symbols, along with symbols from all import statements like from Module.Type import all (which should collect all the constructors), etc. The step should update BindingMap with the additional information.

There is an abandoned PR that adds this functionality - #6457. Before this PR will be integrated, we should think over the architecture of current BindingMap - it is currently modified in-place from many places, which is potentially dangerous, especially because BindingMap is serializable, and it is cached.

Related:

Tasks

Preview Give feedback
@Akirathan Akirathan added s-research-needed Status: the task will require heavy research to complete x-new-feature Type: new feature request -compiler labels May 17, 2023
@Akirathan Akirathan self-assigned this May 17, 2023
@Akirathan Akirathan linked a pull request May 17, 2023 that will close this issue
5 tasks
@jdunkerley jdunkerley moved this from ❓New to 🔧 Implementation in Issues Board May 23, 2023
@jdunkerley jdunkerley moved this from 🔧 Implementation to 📤 Backlog in Issues Board May 23, 2023
@Akirathan
Copy link
Member Author

This issue blocks #9692 (comment) - private check cannot throw a compiler error when accessing private constructors or private methods.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-compiler s-research-needed Status: the task will require heavy research to complete x-new-feature Type: new feature request x-on-hold
Projects
Status: 📤 Backlog
Development

Successfully merging a pull request may close this issue.

2 participants