# HG changeset patch # User korDen # Date 1282360914 -14400 # Node ID ea4769860460e6fb6ba98f2797e178ad05a79e80 # Parent a509c8688fbd12cd7a648aea425d1b5dbefd068b TemplateValueParameter.defaultArg diff -r a509c8688fbd -r ea4769860460 dmd/TemplateValueParameter.d --- a/dmd/TemplateValueParameter.d Sat Aug 21 07:20:15 2010 +0400 +++ b/dmd/TemplateValueParameter.d Sat Aug 21 07:21:54 2010 +0400 @@ -14,6 +14,7 @@ import dmd.VarDeclaration; import dmd.Initializer; import dmd.ExpInitializer; +import dmd.DefaultInitExp; import dmd.STC; import dmd.Util; import dmd.TY; @@ -120,7 +121,20 @@ Object defaultArg(Loc loc, Scope sc) { - assert(false); + Expression e = defaultValue; + if (e) + { + e = e.syntaxCopy(); + e = e.semantic(sc); +version (DMDV2) { + if (e.op == TOKdefault) + { + DefaultInitExp de = cast(DefaultInitExp)e; + e = de.resolve(loc, sc); + } +} + } + return e; } bool overloadMatch(TemplateParameter tp)