https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98921

--- Comment #3 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
(In reply to Andreas Schwab from comment #2)
> diff --git a/gcc/d/dmd/dmangle.c b/gcc/d/dmd/dmangle.c
> index f6eee52afbf..73d9ac5367f 100644
> --- a/gcc/d/dmd/dmangle.c
> +++ b/gcc/d/dmd/dmangle.c
> @@ -822,7 +822,7 @@ public:
>      void visit(IntegerExp *e)
>      {
>          if ((sinteger_t)e->value < 0)
> -            buf->printf("N%lld", -e->value);
> +            buf->printf("N%llu", -e->value);
>          else
>              buf->printf("i%lld",  e->value);
>      }

Thanks!

The upstream D implementation of the compiler adds a special formatter for
printing of integers.  I've tested that a backport of it on powerpc64le-linux
and confirmed it fixes this pr.

Reply via email to