Mercurial > projects > ddmd
comparison dmd/ForeachStatement.d @ 12:832f71e6f96c
*Exp and *AssignExp arrayOp implementation added (might be a bit incomplete)
Some unittest-specific functions implemented
author | korDen |
---|---|
date | Mon, 12 Apr 2010 15:13:00 +0400 |
parents | 10317f0c89a5 |
children | a8b50ff7f201 |
comparison
equal
deleted
inserted
replaced
11:3356c90e9aac | 12:832f71e6f96c |
---|---|
652 case TY.Tchar: flag += 0; break; | 652 case TY.Tchar: flag += 0; break; |
653 case TY.Twchar: flag += 1; break; | 653 case TY.Twchar: flag += 1; break; |
654 case TY.Tdchar: flag += 2; break; | 654 case TY.Tdchar: flag += 2; break; |
655 } | 655 } |
656 string r = (op == TOK.TOKforeach_reverse) ? "R" : ""; | 656 string r = (op == TOK.TOKforeach_reverse) ? "R" : ""; |
657 int j = sprintf(fdname.ptr, "_aApply%*.s%.*s%ld".ptr, r, 2, fntab[flag].ptr, dim); | 657 int j = sprintf(fdname.ptr, "_aApply%.*s%.*s%ld".ptr, r, 2, fntab[flag].ptr, dim); |
658 assert(j < fdname.sizeof); | 658 assert(j < fdname.sizeof); |
659 fdapply = FuncDeclaration.genCfunc(Type.tindex, fdname[0..j].idup); | 659 fdapply = FuncDeclaration.genCfunc(Type.tindex, fdname[0..j].idup); |
660 | 660 |
661 ec = new VarExp(Loc(0), fdapply); | 661 ec = new VarExp(Loc(0), fdapply); |
662 Expressions exps = new Expressions(); | 662 Expressions exps = new Expressions(); |