Mercurial > projects > ddmd
diff dmd/TypeQualified.d @ 52:69d078c417c6
Identifier <-> TemplateInstance casts workaround
author | korDen |
---|---|
date | Sat, 21 Aug 2010 11:50:50 +0400 |
parents | 10317f0c89a5 |
children | 51605de93870 |
line wrap: on
line diff
--- a/dmd/TypeQualified.d Sat Aug 21 11:17:42 2010 +0400 +++ b/dmd/TypeQualified.d Sat Aug 21 11:50:50 2010 +0400 @@ -48,20 +48,17 @@ idents.setDim(t.idents.dim); for (int i = 0; i < idents.dim; i++) { - Identifier id = cast(Identifier)t.idents.data[i]; - if (id.dyncast() == DYNCAST.DYNCAST_DSYMBOL) + Object o = cast(Object)t.idents.data[i]; + if (TemplateInstance ti = cast(TemplateInstance)o) { - TemplateInstance ti = cast(TemplateInstance)id; - - ti = cast(TemplateInstance)ti.syntaxCopy(null); - id = cast(Identifier)ti; + o = ti.syntaxCopy(null); } - idents.data[i] = cast(void*)id; + idents.data[i] = cast(void*)o; } } - void addIdent(Identifier ident) + void addIdent(Object ident) { idents.push(cast(void*)ident); }