summaryrefslogtreecommitdiff
path: root/gcc/d/dmd/mtype.d
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/d/dmd/mtype.d')
-rw-r--r--gcc/d/dmd/mtype.d5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/d/dmd/mtype.d b/gcc/d/dmd/mtype.d
index 32f57d46773..12608534879 100644
--- a/gcc/d/dmd/mtype.d
+++ b/gcc/d/dmd/mtype.d
@@ -6184,6 +6184,11 @@ extern (C++) final class TypeClass : Type
if (t && t.ty == Tclass)
{
ClassDeclaration cd = (cast(TypeClass)t).sym;
+ if (cd.semanticRun < PASS.semanticdone && !cd.isBaseInfoComplete())
+ cd.dsymbolSemantic(null);
+ if (sym.semanticRun < PASS.semanticdone && !sym.isBaseInfoComplete())
+ sym.dsymbolSemantic(null);
+
if (sym.isBaseOf(cd, poffset))
return true;
}