From: Richard Sandiford <richard.sandiford@arm.com>
To: Jan-Benedict Glaw <jbglaw@lug-owl.de>
Cc: gcc-patches@gcc.gnu.org, jakub@redhat.com
Subject: Re: [PATCH] Remove poly_int_pod
Date: Mon, 02 Oct 2023 08:50:23 +0100 [thread overview]
Message-ID: <mpt5y3ppio0.fsf@arm.com> (raw)
In-Reply-To: <20231002074757.GK31556@lug-owl.de> (Jan-Benedict Glaw's message of "Mon, 2 Oct 2023 09:47:57 +0200")
Jan-Benedict Glaw <jbglaw@lug-owl.de> writes:
> Hi Richard,
>
> On Thu, 2023-09-28 10:55:46 +0100, Richard Sandiford <richard.sandiford@arm.com> wrote:
>> poly_int was written before the switch to C++11 and so couldn't
>> use explicit default constructors. This led to an awkward split
>> between poly_int_pod and poly_int. poly_int simply inherited from
>> poly_int_pod and added constructors, with the argumentless constructor
>> having an empty body. But inheritance meant that poly_int had to
>> repeat the assignment operators from poly_int_pod (again, no C++11,
>> so no "using" to inherit base-class implementations).
> [...]
>
> I haven't bisected it, but I guess your patch caused this:
>
> [all 2023-10-02 06:59:02] /var/lib/laminar/run/gcc-local/75/local-toolchain-install/bin/g++ -std=c++11 -fno-PIE -c -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Wconditionally-supported -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -fno-PIE -I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include -I../../gcc/gcc/../libcody -I../../gcc/gcc/../libdecnumber -I../../gcc/gcc/../libdecnumber/bid -I../libdecnumber -I../../gcc/gcc/../libbacktrace -o rtl-tests.o -MT rtl-tests.o -MMD -MP -MF ./.deps/rtl-tests.TPo ../../gcc/gcc/rtl-tests.cc
> [all 2023-10-02 06:59:04] In file included from ../../gcc/gcc/coretypes.h:480,
> [all 2023-10-02 06:59:04] from ../../gcc/gcc/rtl-tests.cc:22:
> [all 2023-10-02 06:59:04] ../../gcc/gcc/poly-int.h: In instantiation of 'constexpr poly_int<N, T>::poly_int(poly_int_full, const Cs& ...) [with Cs = {int, int}; unsigned int N = 1; C = long int]':
> [all 2023-10-02 06:59:04] ../../gcc/gcc/poly-int.h:439:13: required from here
> [all 2023-10-02 06:59:04] ../../gcc/gcc/rtl-tests.cc:249:25: in 'constexpr' expansion of 'poly_int<1, long int>(1, 1)'
> [all 2023-10-02 06:59:04] ../../gcc/gcc/poly-int.h:453:5: error: too many initializers for 'long int [1]'
> [all 2023-10-02 06:59:04] 453 | : coeffs { (typename poly_coeff_traits<C>::
> [all 2023-10-02 06:59:04] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> [all 2023-10-02 06:59:04] 454 | template init_cast<Cs>::type (cs))... } {}
> [all 2023-10-02 06:59:04] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> [all 2023-10-02 06:59:04] make[1]: *** [Makefile:1188: rtl-tests.o] Error 1
> [all 2023-10-02 06:59:04] make[1]: Leaving directory '/var/lib/laminar/run/gcc-local/75/toolchain-build/gcc'
> [all 2023-10-02 06:59:05] make: *** [Makefile:4993: all-gcc] Error 2
>
>
> (Full build log at
> http://toolchain.lug-owl.de/laminar/jobs/gcc-local/75 . That's in a
> Docker container on amd64-linux with the host gcc being at fairly new
> at basepoints/gcc-14-3827-g30e6ee07458)
Yeah, this was PR111642. I pushed a fix this morning.
Thanks,
Richard
prev parent reply other threads:[~2023-10-02 7:50 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-28 9:55 Richard Sandiford
2023-09-28 14:06 ` Jakub Jelinek
2023-09-28 17:26 ` Jason Merrill
2023-09-28 19:09 ` Jeff Law
2023-09-29 6:31 ` Richard Biener
2023-09-29 8:14 ` Jakub Jelinek
2023-10-02 7:47 ` Jan-Benedict Glaw
2023-10-02 7:50 ` Richard Sandiford [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=mpt5y3ppio0.fsf@arm.com \
--to=richard.sandiford@arm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=jakub@redhat.com \
--cc=jbglaw@lug-owl.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).