comparison gen/toir.cpp @ 703:06576ece1a1b

Changed premake.lua to work with mingw. Implemented array operations, not perfect but ok for tonight. closes #89
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Mon, 13 Oct 2008 23:19:32 +0200
parents ed9a9e6dd1cc
children 43165a082535
comparison
equal deleted inserted replaced
702:353d9d184091 703:06576ece1a1b
468 DVarValue arrval(ale->e1->type, arr->getLVal()); 468 DVarValue arrval(ale->e1->type, arr->getLVal());
469 DValue* newlen = e2->toElem(p); 469 DValue* newlen = e2->toElem(p);
470 DSliceValue* slice = DtoResizeDynArray(arrval.getType(), &arrval, newlen); 470 DSliceValue* slice = DtoResizeDynArray(arrval.getType(), &arrval, newlen);
471 DtoAssign(loc, &arrval, slice); 471 DtoAssign(loc, &arrval, slice);
472 return newlen; 472 return newlen;
473 }
474 else if (e1->op == TOKslice && !ismemset &&
475 (e2->op == TOKadd || e2->op == TOKmin ||
476 e2->op == TOKmul || e2->op == TOKdiv ||
477 e2->op == TOKmod || e2->op == TOKxor ||
478 e2->op == TOKand || e2->op == TOKor ||
479 e2->op == TOKtilde || e2->op == TOKneg))
480 {
481 assert(0 && "array op assignment is TODO");
482 } 473 }
483 474
484 Logger::println("performing normal assignment"); 475 Logger::println("performing normal assignment");
485 476
486 DValue* l = e1->toElem(p); 477 DValue* l = e1->toElem(p);