September 22

Summary of progress (September 15 - September 22)

This week, I worked on eliminating some of the semantic function calls in ast nodes files.

What I worked on

  • Break semantic dependency of dmd/func.d on dmd/dsymbolsem.d by eliminating the call of dmd.dsymbolsem.toParentP (See Merged PR).

  • Move Dsymbol.overloadInsert to dmd/dsymbolsem.d to eliminate the call of dmd.dsymbolsem.aliasSemantic in dmd/dtemplate.d (See Merged PR).

  • Break semantic dependency of dmd/func.d on dmd/funcsem.d by moving Dsymbol.equals to dmd/dsymbolsem to eliminate the call of dmd.funcsem.isUnique (See Merged PR).

  • Break semantic dependency of dmd/aggregate.d on dmd/dsymbolsem.d by moving Dsymbol.size to dmd/dsymbolsem.d to eliminate the call of dmd.dsymbolsem.determineSize (See Merged PR)

  • Break semantic dependency of dmd/declaration.d on dmd/dsymbolsem.d by moving Dsymbol.getType to dmd/dsymbolsem.d to eliminate the call of dmd.dsymbolsem.toAlias and dmd.typesem.typeSemantic (See Merged PR).

  • Break semantic dependency of dmd/declaration.d on dmd/typesem.d by moving VarDeclaration.isOverlappedWith to eliminate the call of dmd.typesem.size (See Merged PR).

  • Break semantic dependency of dmd/dmodule.d on dmd/dsymbolsem.d by moving some semantic functions to eliminate the call of dmd.dsymbolsem.dsymbolSemantic (See Merged PR).

  • Move Expression.equals and Expression.isIdentical to dmd/expressionsem.d to eliminate the call of dmd.typesem.toHeadMutable (See Merged PR).

  • Move TemplateInstance.hasNestedArgs to dmd/templatesem.d to eliminate the call of dmd.dsymbolsem.toAlias and dmd.typesem.isBaseOf (See Merged PR).

September 22

On Monday, 22 September 2025 at 17:41:15 UTC, Mohamed El Shorbagy wrote:

>

Summary of progress (September 15 - September 22)

This week, I worked on eliminating some of the semantic function calls in ast nodes files.

What I worked on

. . . . . . . .

Great start! Good luck and enjoy!