- Updated to DMD frontend 1.041.

- Removed dmd/inifile.c , it's not under a free license, replaced with libconfig based config file.
This commit is contained in:
Tomas Lindquist Olsen
2009-03-12 20:37:27 +01:00
parent ff354d59b2
commit 8b751cce0e
57 changed files with 1319 additions and 2477 deletions

View File

@@ -234,7 +234,7 @@ Expression *AddrExp::optimize(int result)
TypeSArray *ts = (TypeSArray *)ve->type;
integer_t dim = ts->dim->toInteger();
if (index < 0 || index >= dim)
error("array index %lld is out of bounds [0..%lld]", index, dim);
error("array index %jd is out of bounds [0..%jd]", index, dim);
e = new SymOffExp(loc, ve->var, index * ts->next->size());
e->type = type;
return e;
@@ -421,8 +421,7 @@ Expression *BinExp::optimize(int result)
integer_t i2 = e2->toInteger();
d_uns64 sz = e1->type->size() * 8;
if (i2 < 0 || i2 > sz)
{
error("shift assign by %lld is outside the range 0..%"PRIuSIZE, i2, sz);
{ error("shift assign by %jd is outside the range 0..%zu", i2, sz);
e2 = new IntegerExp(0);
}
}
@@ -517,8 +516,7 @@ Expression *shift_optimize(int result, BinExp *e, Expression *(*shift)(Type *, E
integer_t i2 = e->e2->toInteger();
d_uns64 sz = e->e1->type->size() * 8;
if (i2 < 0 || i2 > sz)
{
error("shift by %lld is outside the range 0..%"PRIuSIZE, i2, sz);
{ e->error("shift by %jd is outside the range 0..%zu", i2, sz);
e->e2 = new IntegerExp(0);
}
if (e->e1->isConst() == 1)