On Fri, Nov 5, 2021 at 10:59 AM Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > On Thu, Nov 04, 2021 at 01:45:38PM +0100, Jakub Jelinek via Gcc-patches wrote: > > On Thu, Nov 04, 2021 at 12:39:34PM +0000, Iain Sandoe wrote: > > > Bootstrap succeeded with Apple clang-503.0.40 (Xcode 5.1.1) on macOS 10.8 > > > which is the earliest version I expect to work (previous xcode impl. have > > > more > > > C++11 incompatibilities). So OK from a Darwin PoV. > > > > > > The other reported toolchain with the issue was GCC-4.9.2 as discussed on > > > IRC - this also seems OK. > > > > > > Especially because 11.x is not going to have the dyninit optimization > > > > for > > > > sure, it would be nice to do this on the 11 branch too. > > Bootstrapped/regtested on x86_64-linux and i686-linux successfully too, with > sligtly different formatting, as I think in our coding style constexpr > should go on the previous line and the ctor didn't have space before (. > > Ok for trunk and 11.3?
OK. > 2021-11-05 Jakub Jelinek <ja...@redhat.com> > > PR bootstrap/100246 > * config/i386/i386.h > (stringop_algs::stringop_strategy::stringop_strategy): Make the ctor > constexpr. > > --- gcc/config/i386/i386.h.jj 2021-09-28 23:18:35.282563395 +0200 > +++ gcc/config/i386/i386.h 2021-11-04 10:48:47.165086806 +0100 > @@ -78,8 +78,9 @@ struct stringop_algs > this issue. Since this header is used by code compiled with the C > compiler we must guard the addition. */ > #ifdef __cplusplus > - stringop_strategy(int _max = -1, enum stringop_alg _alg = libcall, > - int _noalign = false) > + constexpr > + stringop_strategy (int _max = -1, enum stringop_alg _alg = libcall, > + int _noalign = false) > : max (_max), alg (_alg), noalign (_noalign) {} > #endif > const int max; > > > Jakub >