| Code-Review | +1 |
lgtm! This is a really nice design improvement.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Commit-Queue | +2 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
CQ. Use dedicated scopes in ResolutionVisitor
Replace ad-hoc name-scope setup for generic and executable declarations
with purpose-built scopes that model the language rules more precisely.
- Introduce TypeParameterScope for type parameter lists, backed by a new
helper that binds (or creates) the corresponding fragments in declaration
order without manually injecting them into LocalScope.
- Use FormalParameterScope to make non-initializing formal parameters visible
while resolving function and method bodies, and remove the manual
parameter-definition pass.
- Fix constructor scoping so initializer expressions are resolved under
ConstructorInitializerScope and primary constructor bodies split their work:
initializers run in the initializer scope, while the body runs in
PrimaryParameterScope to preserve correct shadowing and member lookup.
This tightens name resolution around primary constructors and eliminates
redundant LocalScope wrappers where guarded-pattern resolution already
creates the necessary scopes.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |