Merged DMD 1.042.

This commit is contained in:
Tomas Lindquist Olsen
2009-04-03 17:59:34 +02:00
parent 57bf95cb42
commit 3d1f8cc565
38 changed files with 6504 additions and 5232 deletions
+9 -9
View File
@@ -1,6 +1,6 @@
// Compiler implementation of the D programming language
// Copyright (c) 1999-2007 by Digital Mars
// Copyright (c) 1999-2009 by Digital Mars
// All Rights Reserved
// written by Walter Bright
// http://www.digitalmars.com
@@ -555,7 +555,7 @@ Expression *Shr(Type *type, Expression *e1, Expression *e2)
{ Expression *e;
Loc loc = e1->loc;
unsigned count;
integer_t value;
dinteger_t value;
value = e1->toInteger();
count = e2->toInteger();
@@ -604,7 +604,7 @@ Expression *Ushr(Type *type, Expression *e1, Expression *e2)
{ Expression *e;
Loc loc = e1->loc;
unsigned count;
integer_t value;
dinteger_t value;
value = e1->toInteger();
count = e2->toInteger();
@@ -887,7 +887,7 @@ Expression *Identity(enum TOK op, Type *type, Expression *e1, Expression *e2)
Expression *Cmp(enum TOK op, Type *type, Expression *e1, Expression *e2)
{ Expression *e;
Loc loc = e1->loc;
integer_t n;
dinteger_t n;
real_t r1;
real_t r2;
@@ -1058,7 +1058,7 @@ Expression *Cast(Type *type, Type *to, Expression *e1)
else if (type->isintegral())
{
if (e1->type->isfloating())
{ integer_t result;
{ dinteger_t result;
real_t r = e1->toReal();
switch (type->toBasetype()->ty)
@@ -1251,7 +1251,7 @@ Expression *Slice(Type *type, Expression *e1, Expression *lwr, Expression *upr)
if (iupr > es1->len || ilwr > iupr)
e1->error("string slice [%ju .. %ju] is out of bounds", ilwr, iupr);
else
{ integer_t value;
{ dinteger_t value;
void *s;
size_t len = iupr - ilwr;
int sz = es1->sz;
@@ -1317,7 +1317,7 @@ Expression *Cat(Type *type, Expression *e1, Expression *e2)
StringExp *es;
size_t len = 1;
int sz = tn->size();
integer_t v = e->toInteger();
dinteger_t v = e->toInteger();
s = mem.malloc((len + 1) * sz);
memcpy((unsigned char *)s, &v, sz);
@@ -1384,7 +1384,7 @@ Expression *Cat(Type *type, Expression *e1, Expression *e2)
Type *t;
size_t len = es1->len + 1;
int sz = es1->sz;
integer_t v = e2->toInteger();
dinteger_t v = e2->toInteger();
s = mem.malloc((len + 1) * sz);
memcpy(s, es1->string, es1->len * sz);
@@ -1409,7 +1409,7 @@ Expression *Cat(Type *type, Expression *e1, Expression *e2)
Type *t;
size_t len = 1 + es2->len;
int sz = es2->sz;
integer_t v = e1->toInteger();
dinteger_t v = e1->toInteger();
s = mem.malloc((len + 1) * sz);
memcpy((unsigned char *)s, &v, sz);