mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-10-17 16:27:26 +02:00
Merged DMD 1.042.
This commit is contained in:
+9
-9
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user