Mercurial > projects > ldc
diff dmd/expression.h @ 1358:78038e540342
Fix overload resolution issue in dmd bug 313/314 fix.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sat, 16 May 2009 12:17:33 +0200 |
parents | e961851fb8be |
children | 8026319762be |
line wrap: on
line diff
--- a/dmd/expression.h Fri May 15 17:17:20 2009 +0200 +++ b/dmd/expression.h Sat May 16 12:17:33 2009 +0200 @@ -73,7 +73,7 @@ Expression *resolveProperties(Scope *sc, Expression *e); void accessCheck(Loc loc, Scope *sc, Expression *e, Declaration *d); Dsymbol *search_function(AggregateDeclaration *ad, Identifier *funcid); -void inferApplyArgTypes(enum TOK op, Arguments *arguments, Expression *aggr); +void inferApplyArgTypes(enum TOK op, Arguments *arguments, Expression *aggr, Module* from); void argExpTypesToCBuffer(OutBuffer *buf, Expressions *arguments, HdrGenState *hgs); void argsToCBuffer(OutBuffer *buf, Expressions *arguments, HdrGenState *hgs); void expandTuples(Expressions *exps); @@ -634,6 +634,7 @@ { Declaration *var; unsigned offset; + Module* m; // starting point for overload resolution SymOffExp(Loc loc, Declaration *var, unsigned offset); Expression *semantic(Scope *sc); @@ -969,6 +970,7 @@ struct DelegateExp : UnaExp { FuncDeclaration *func; + Module* m; // starting point for overload resolution DelegateExp(Loc loc, Expression *e, FuncDeclaration *func); Expression *semantic(Scope *sc); @@ -1036,6 +1038,8 @@ struct AddrExp : UnaExp { + Module* m; // starting point for overload resolution + AddrExp(Loc loc, Expression *e); Expression *semantic(Scope *sc); #if IN_DMD