From 1cf5dc05c678232b52ac0572a94b891131ef48f0 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Tue, 31 Oct 2023 12:20:02 +0100 Subject: [PATCH] d: Clean-up unused variable assignments after interface change The lowering done for invoking `new' on a single dimension array was moved from the code generator to the front-end semantic pass in r14-4996. This removes the detritus left behind in the code generator from that deletion. gcc/d/ChangeLog: * expr.cc (ExprVisitor::visit (NewExp *)): Remove unused assignments. --- gcc/d/expr.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gcc/d/expr.cc b/gcc/d/expr.cc index ef4ea60ffed..17801a3bd1e 100644 --- a/gcc/d/expr.cc +++ b/gcc/d/expr.cc @@ -2357,9 +2357,6 @@ public: else if (tb->ty == TY::Tarray) { /* Allocating memory for a new D array. */ - tb = e->newtype->toBasetype (); - TypeDArray *tarray = tb->isTypeDArray (); - gcc_assert (e->arguments && e->arguments->length >= 1); if (e->arguments->length == 1) @@ -2403,7 +2400,8 @@ public: size_int (e->arguments->length), build_address (var)); - result = build_libcall (libcall, tb, 2, tinfo, dims); + result = build_libcall (libcall, e->newtype->toBasetype (), 2, + tinfo, dims); } if (e->argprefix)