comparison dmd2/mtype.c @ 771:bfabbac8e705

Fixed 64bit problem with aaValues runtime calls (assumed 32bits)
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sun, 16 Nov 2008 20:42:45 +0100
parents 9a9f403ab399
children 340acf1535d0
comparison
equal deleted inserted replaced
770:50eae902f77e 771:bfabbac8e705
2734 2734
2735 ec = new VarExp(0, aaValues_fd); 2735 ec = new VarExp(0, aaValues_fd);
2736 arguments = new Expressions(); 2736 arguments = new Expressions();
2737 arguments->push(e); 2737 arguments->push(e);
2738 size_t keysize = index->size(e->loc); 2738 size_t keysize = index->size(e->loc);
2739 keysize = (keysize + 4 - 1) & ~(4 - 1); 2739 keysize = (keysize + PTRSIZE - 1) & ~(PTRSIZE - 1);
2740 arguments->push(new IntegerExp(0, keysize, Type::tsize_t)); 2740 arguments->push(new IntegerExp(0, keysize, Type::tsize_t));
2741 arguments->push(new IntegerExp(0, next->size(e->loc), Type::tsize_t)); 2741 arguments->push(new IntegerExp(0, next->size(e->loc), Type::tsize_t));
2742 e = new CallExp(e->loc, ec, arguments); 2742 e = new CallExp(e->loc, ec, arguments);
2743 e->type = next->arrayOf(); 2743 e->type = next->arrayOf();
2744 } 2744 }