aboutsummaryrefslogtreecommitdiff
path: root/gcc/d/dmd/constfold.d
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/d/dmd/constfold.d')
-rw-r--r--gcc/d/dmd/constfold.d56
1 files changed, 28 insertions, 28 deletions
diff --git a/gcc/d/dmd/constfold.d b/gcc/d/dmd/constfold.d
index f4e44e8..ef684ba 100644
--- a/gcc/d/dmd/constfold.d
+++ b/gcc/d/dmd/constfold.d
@@ -644,7 +644,7 @@ UnionExp Equal(EXP op, const ref Loc loc, Type type, Expression e1, Expression e
}
else if (ArrayLiteralExp es2 = e2.isArrayLiteralExp())
{
- cmp = !es2.elements || (0 == es2.elements.dim);
+ cmp = !es2.elements || (0 == es2.elements.length);
}
else
{
@@ -660,7 +660,7 @@ UnionExp Equal(EXP op, const ref Loc loc, Type type, Expression e1, Expression e
}
else if (ArrayLiteralExp es1 = e1.isArrayLiteralExp())
{
- cmp = !es1.elements || (0 == es1.elements.dim);
+ cmp = !es1.elements || (0 == es1.elements.length);
}
else
{
@@ -689,15 +689,15 @@ UnionExp Equal(EXP op, const ref Loc loc, Type type, Expression e1, Expression e
{
ArrayLiteralExp es1 = e1.isArrayLiteralExp();
ArrayLiteralExp es2 = e2.isArrayLiteralExp();
- if ((!es1.elements || !es1.elements.dim) && (!es2.elements || !es2.elements.dim))
+ if ((!es1.elements || !es1.elements.length) && (!es2.elements || !es2.elements.length))
cmp = 1; // both arrays are empty
else if (!es1.elements || !es2.elements)
cmp = 0;
- else if (es1.elements.dim != es2.elements.dim)
+ else if (es1.elements.length != es2.elements.length)
cmp = 0;
else
{
- for (size_t i = 0; i < es1.elements.dim; i++)
+ for (size_t i = 0; i < es1.elements.length; i++)
{
auto ee1 = es1[i];
auto ee2 = es2[i];
@@ -724,7 +724,7 @@ UnionExp Equal(EXP op, const ref Loc loc, Type type, Expression e1, Expression e
StringExp es1 = e1.isStringExp();
ArrayLiteralExp es2 = e2.isArrayLiteralExp();
size_t dim1 = es1.len;
- size_t dim2 = es2.elements ? es2.elements.dim : 0;
+ size_t dim2 = es2.elements ? es2.elements.length : 0;
if (dim1 != dim2)
cmp = 0;
else
@@ -751,16 +751,16 @@ UnionExp Equal(EXP op, const ref Loc loc, Type type, Expression e1, Expression e
StructLiteralExp es2 = e2.isStructLiteralExp();
if (es1.sd != es2.sd)
cmp = 0;
- else if ((!es1.elements || !es1.elements.dim) && (!es2.elements || !es2.elements.dim))
+ else if ((!es1.elements || !es1.elements.length) && (!es2.elements || !es2.elements.length))
cmp = 1; // both arrays are empty
else if (!es1.elements || !es2.elements)
cmp = 0;
- else if (es1.elements.dim != es2.elements.dim)
+ else if (es1.elements.length != es2.elements.length)
cmp = 0;
else
{
cmp = 1;
- for (size_t i = 0; i < es1.elements.dim; i++)
+ for (size_t i = 0; i < es1.elements.length; i++)
{
Expression ee1 = (*es1.elements)[i];
Expression ee2 = (*es2.elements)[i];
@@ -1074,7 +1074,7 @@ UnionExp Cast(const ref Loc loc, Type type, Type to, Expression e1)
StructDeclaration sd = tb.toDsymbol(null).isStructDeclaration();
assert(sd);
auto elements = new Expressions();
- for (size_t i = 0; i < sd.fields.dim; i++)
+ for (size_t i = 0; i < sd.fields.length; i++)
{
VarDeclaration v = sd.fields[i];
UnionExp zero;
@@ -1110,12 +1110,12 @@ UnionExp ArrayLength(Type type, Expression e1)
}
else if (ArrayLiteralExp ale = e1.isArrayLiteralExp())
{
- size_t dim = ale.elements ? ale.elements.dim : 0;
+ size_t dim = ale.elements ? ale.elements.length : 0;
emplaceExp!(IntegerExp)(&ue, loc, dim, type);
}
else if (AssocArrayLiteralExp ale = e1.isAssocArrayLiteralExp)
{
- size_t dim = ale.keys.dim;
+ size_t dim = ale.keys.length;
emplaceExp!(IntegerExp)(&ue, loc, dim, type);
}
else if (e1.type.toBasetype().ty == Tsarray)
@@ -1183,9 +1183,9 @@ UnionExp Index(Type type, Expression e1, Expression e2, bool indexIsInBounds)
uinteger_t i = e2.toInteger();
if (ArrayLiteralExp ale = e1.isArrayLiteralExp())
{
- if (i >= ale.elements.dim)
+ if (i >= ale.elements.length)
{
- e1.error("array index %llu is out of bounds `%s[0 .. %llu]`", i, e1.toChars(), cast(ulong) ale.elements.dim);
+ e1.error("array index %llu is out of bounds `%s[0 .. %llu]`", i, e1.toChars(), cast(ulong) ale.elements.length);
emplaceExp!(ErrorExp)(&ue);
}
else
@@ -1206,7 +1206,7 @@ UnionExp Index(Type type, Expression e1, Expression e2, bool indexIsInBounds)
{
/* Search the keys backwards, in case there are duplicate keys
*/
- for (size_t i = ae.keys.dim; i;)
+ for (size_t i = ae.keys.length; i;)
{
i--;
Expression ekey = (*ae.keys)[i];
@@ -1274,7 +1274,7 @@ UnionExp Slice(Type type, Expression e1, Expression lwr, Expression upr)
ArrayLiteralExp es1 = e1.isArrayLiteralExp();
const uinteger_t ilwr = lwr.toInteger();
const uinteger_t iupr = upr.toInteger();
- if (sliceBoundsCheck(0, es1.elements.dim, ilwr, iupr))
+ if (sliceBoundsCheck(0, es1.elements.length, ilwr, iupr))
cantExp(ue);
else
{
@@ -1318,7 +1318,7 @@ void sliceAssignArrayLiteralFromString(ArrayLiteralExp existingAE, const StringE
void sliceAssignStringFromArrayLiteral(StringExp existingSE, ArrayLiteralExp newae, size_t firstIndex)
{
assert(existingSE.ownedByCtfe != OwnedBy.code);
- foreach (j; 0 .. newae.elements.dim)
+ foreach (j; 0 .. newae.elements.length)
{
existingSE.setCodeUnit(firstIndex + j, cast(dchar)newae[j].toInteger());
}
@@ -1383,9 +1383,9 @@ private Expressions* copyElements(Expression e1, Expression e2 = null)
{
if (!ale.elements)
return;
- auto d = elems.dim;
+ auto d = elems.length;
elems.append(ale.elements);
- foreach (ref el; (*elems)[d .. elems.dim])
+ foreach (ref el; (*elems)[d .. elems.length])
{
if (!el)
el = ale.basis;
@@ -1524,15 +1524,15 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
// [chars] ~ string --> [chars]
StringExp es = e2.isStringExp();
ArrayLiteralExp ea = e1.isArrayLiteralExp();
- size_t len = es.len + ea.elements.dim;
+ size_t len = es.len + ea.elements.length;
auto elems = new Expressions(len);
- for (size_t i = 0; i < ea.elements.dim; ++i)
+ for (size_t i = 0; i < ea.elements.length; ++i)
{
(*elems)[i] = ea[i];
}
emplaceExp!(ArrayLiteralExp)(&ue, e1.loc, type, elems);
ArrayLiteralExp dest = ue.exp().isArrayLiteralExp();
- sliceAssignArrayLiteralFromString(dest, es, ea.elements.dim);
+ sliceAssignArrayLiteralFromString(dest, es, ea.elements.length);
assert(ue.exp().type);
return ue;
}
@@ -1541,9 +1541,9 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
// string ~ [chars] --> [chars]
StringExp es = e1.isStringExp();
ArrayLiteralExp ea = e2.isArrayLiteralExp();
- size_t len = es.len + ea.elements.dim;
+ size_t len = es.len + ea.elements.length;
auto elems = new Expressions(len);
- for (size_t i = 0; i < ea.elements.dim; ++i)
+ for (size_t i = 0; i < ea.elements.length; ++i)
{
(*elems)[es.len + i] = ea[i];
}
@@ -1609,7 +1609,7 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
e = ue.exp();
if (type.toBasetype().ty == Tsarray)
{
- e.type = t1.nextOf().sarrayOf(elems.dim);
+ e.type = t1.nextOf().sarrayOf(elems.length);
}
else
e.type = type;
@@ -1633,7 +1633,7 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
e = ue.exp();
if (type.toBasetype().ty == Tsarray)
{
- e.type = t1.nextOf().sarrayOf(elems.dim);
+ e.type = t1.nextOf().sarrayOf(elems.length);
}
else
e.type = type;
@@ -1651,7 +1651,7 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
e = ue.exp();
if (type.toBasetype().ty == Tsarray)
{
- e.type = e2.type.sarrayOf(elems.dim);
+ e.type = e2.type.sarrayOf(elems.length);
}
else
e.type = type;
@@ -1667,7 +1667,7 @@ UnionExp Cat(const ref Loc loc, Type type, Expression e1, Expression e2)
e = ue.exp();
if (type.toBasetype().ty == Tsarray)
{
- e.type = e1.type.sarrayOf(elems.dim);
+ e.type = e1.type.sarrayOf(elems.length);
}
else
e.type = type;