aboutsummaryrefslogtreecommitdiff
path: root/gcc/d/dmd/init.c
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2020-06-04 22:36:26 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2020-06-04 23:27:12 +0200
commit2cbc99d18dc411ac3fdef94e22ce86859806e63c (patch)
tree82939940413c5e726889ccd97fa2afd33e0b06be /gcc/d/dmd/init.c
parent4e05c918d28e3fa66f5baaf556f6886447c68c9a (diff)
downloadgcc-2cbc99d18dc411ac3fdef94e22ce86859806e63c.zip
gcc-2cbc99d18dc411ac3fdef94e22ce86859806e63c.tar.gz
gcc-2cbc99d18dc411ac3fdef94e22ce86859806e63c.tar.bz2
d: Merge upstream dmd 48d704f08
Updates the Array interface in dmd/root/array.h to use a DArray<TYPE> internally. Splits out BitArray into a separate header. Reviewed-on: https://github.com/dlang/dmd/pull/11219 gcc/d/ChangeLog: * dmd/MERGE: Merge upstream dmd 48d704f08. * d-attribs.cc (build_attributes): Use new field name. * d-builtins.cc (build_frontend_type): Likewise. (maybe_set_builtin_1): Likewise. (d_maybe_set_builtin): Likewise. * d-codegen.cc (build_interface_binfo): Likewise. (identity_compare_p): Likewise. (lower_struct_comparison): Likewise. (build_struct_comparison): Likewise. (d_build_call): Likewise. (build_frame_type): Likewise. (build_closure): Likewise. * d-compiler.cc (Compiler::paintAsType): Likewise. (Compiler::loadModule): Likewise. * d-incpath.cc (add_globalpaths): Likewise. (add_filepaths): Likewise. (add_import_paths): Likewise. * d-lang.cc (deps_write): Likewise. (d_parse_file): Likewise. * decl.cc (gcc_attribute_p): Likewise. (base_vtable_offset): Likewise. (get_vtable_decl): Likewise. (build_class_instance): Likewise. * expr.cc (class ExprVisitor): Likewise. * modules.cc (layout_moduleinfo_fields): Likewise. (layout_moduleinfo): Likewise. (build_module_tree): Likewise. * toir.cc (class IRVisitor): Likewise. * typeinfo.cc (class TypeInfoVisitor): Likewise. (layout_classinfo_interfaces): Likewise. * types.cc (layout_aggregate_members): Likewise. (layout_aggregate_type): Likewise.
Diffstat (limited to 'gcc/d/dmd/init.c')
-rw-r--r--gcc/d/dmd/init.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/gcc/d/dmd/init.c b/gcc/d/dmd/init.c
index 1b258ac..c4a496f 100644
--- a/gcc/d/dmd/init.c
+++ b/gcc/d/dmd/init.c
@@ -41,8 +41,8 @@ Initializers *Initializer::arraySyntaxCopy(Initializers *ai)
if (ai)
{
a = new Initializers();
- a->setDim(ai->dim);
- for (size_t i = 0; i < a->dim; i++)
+ a->setDim(ai->length);
+ for (size_t i = 0; i < a->length; i++)
(*a)[i] = (*ai)[i]->syntaxCopy();
}
return a;
@@ -91,10 +91,10 @@ StructInitializer::StructInitializer(Loc loc)
Initializer *StructInitializer::syntaxCopy()
{
StructInitializer *ai = new StructInitializer(loc);
- assert(field.dim == value.dim);
- ai->field.setDim(field.dim);
- ai->value.setDim(value.dim);
- for (size_t i = 0; i < field.dim; i++)
+ assert(field.length == value.length);
+ ai->field.setDim(field.length);
+ ai->value.setDim(value.length);
+ for (size_t i = 0; i < field.length; i++)
{
ai->field[i] = field[i];
ai->value[i] = value[i]->syntaxCopy();
@@ -123,10 +123,10 @@ Initializer *ArrayInitializer::syntaxCopy()
{
//printf("ArrayInitializer::syntaxCopy()\n");
ArrayInitializer *ai = new ArrayInitializer(loc);
- assert(index.dim == value.dim);
- ai->index.setDim(index.dim);
- ai->value.setDim(value.dim);
- for (size_t i = 0; i < ai->value.dim; i++)
+ assert(index.length == value.length);
+ ai->index.setDim(index.length);
+ ai->value.setDim(value.length);
+ for (size_t i = 0; i < ai->value.length; i++)
{
ai->index[i] = index[i] ? index[i]->syntaxCopy() : NULL;
ai->value[i] = value[i]->syntaxCopy();
@@ -144,7 +144,7 @@ void ArrayInitializer::addInit(Expression *index, Initializer *value)
bool ArrayInitializer::isAssociativeArray()
{
- for (size_t i = 0; i < value.dim; i++)
+ for (size_t i = 0; i < value.length; i++)
{
if (index[i])
return true;
@@ -163,11 +163,11 @@ Expression *ArrayInitializer::toAssocArrayLiteral()
//printf("ArrayInitializer::toAssocArrayInitializer()\n");
//static int i; if (++i == 2) halt();
Expressions *keys = new Expressions();
- keys->setDim(value.dim);
+ keys->setDim(value.length);
Expressions *values = new Expressions();
- values->setDim(value.dim);
+ values->setDim(value.length);
- for (size_t i = 0; i < value.dim; i++)
+ for (size_t i = 0; i < value.length; i++)
{
e = index[i];
if (!e)
@@ -274,7 +274,7 @@ bool hasNonConstPointers(Expression *e)
bool arrayHasNonConstPointers(Expressions *elems)
{
- for (size_t i = 0; i < elems->dim; i++)
+ for (size_t i = 0; i < elems->length; i++)
{
Expression *e = (*elems)[i];
if (e && hasNonConstPointers(e))