[SAOC 2025] Separate Semantic Routines from AST Nodes Weekly Update #9
Mohamed El Shorbagy
mohrizq895 at gmail.com
Mon Nov 17 18:27:22 UTC 2025
# Summary of Progress (Nov. 10 - Nov. 17)
This week I worked on the following:
1. Many of the methods in `mtype.d` are dependent on `typesem`.
However, some of them have been handled in the following PRs:
- (Merged) [Move `Type.makeConst` to
`typesem`](https://github.com/dlang/dmd/pull/22090)
- (Merged) [Move `Type.makeMutable` and `Type.makeImmutable`
to `typesem`](https://github.com/dlang/dmd/pull/22094)
- (Merged) [Move `Type.makeShared` and `Type.makeSharedConst`
to `typesem`](https://github.com/dlang/dmd/pull/22095)
- (Merged) [Move `makeWild`, `makeWildConst`,
`makeSharedWild`, and `makeSharedWildConst` to
`typesem`](https://github.com/dlang/dmd/pull/22103)
- (Open) [Move `Type.deduceWild` to
`typesem`](https://github.com/dlang/dmd/pull/22107)
2. Still figuring out the best approach to handle the
`IntegerExp.normalize` function that depends on `toBaseType`,
which in turn depends on semantic analysis. The `normalize`
function is called within the constructor, so to move it out of
`expression`, we need to move it out of the constructor as well
and call it at the proper sites.
More information about the Digitalmars-d
mailing list