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
ondmd/dsymbolsem.d
by eliminating the call ofdmd.dsymbolsem.toParentP
(See Merged PR). -
Move
Dsymbol.overloadInsert
todmd/dsymbolsem.d
to eliminate the call ofdmd.dsymbolsem.aliasSemantic
indmd/dtemplate.d
(See Merged PR). -
Break semantic dependency of
dmd/func.d
ondmd/funcsem.d
by movingDsymbol.equals
todmd/dsymbolsem
to eliminate the call ofdmd.funcsem.isUnique
(See Merged PR). -
Break semantic dependency of
dmd/aggregate.d
ondmd/dsymbolsem.d
by movingDsymbol.size
todmd/dsymbolsem.d
to eliminate the call ofdmd.dsymbolsem.determineSize
(See Merged PR) -
Break semantic dependency of
dmd/declaration.d
ondmd/dsymbolsem.d
by movingDsymbol.getType
todmd/dsymbolsem.d
to eliminate the call ofdmd.dsymbolsem.toAlias
anddmd.typesem.typeSemantic
(See Merged PR). -
Break semantic dependency of
dmd/declaration.d
ondmd/typesem.d
by movingVarDeclaration.isOverlappedWith
to eliminate the call ofdmd.typesem.size
(See Merged PR). -
Break semantic dependency of
dmd/dmodule.d
ondmd/dsymbolsem.d
by moving some semantic functions to eliminate the call ofdmd.dsymbolsem.dsymbolSemantic
(See Merged PR). -
Move
Expression.equals
andExpression.isIdentical
todmd/expressionsem.d
to eliminate the call ofdmd.typesem.toHeadMutable
(See Merged PR). -
Move
TemplateInstance.hasNestedArgs
todmd/templatesem.d
to eliminate the call ofdmd.dsymbolsem.toAlias
anddmd.typesem.isBaseOf
(See Merged PR).