Hi,

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.

Bootstrapped and regression tested on x86_64-linux-gnu/-m32, committed
to mainline.

Regards,
Iain.

---
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)
-- 
2.39.2

Reply via email to