On Mon, May 18, 2020 at 03:51:36PM -0400, Jason Merrill wrote: > > --- a/libgomp/testsuite/libgomp.c++/for-27.C > > +++ b/libgomp/testsuite/libgomp.c++/for-27.C > > @@ -151,6 +151,12 @@ f4 (const I<int> &x, const I<int> &y) > > else if (results[i]) \ > > abort () > > +// FIXME: OpenMP seems to count on this being instantiated; the copy > > +// constructor is called in functions fn2/fn3/fn4. But in C++17 we > > +// elide this copy constructor, so it's never been instantiated. For > > +// now instantiate it explicitly. > > This sounds like a bug that needs to be fixed before the default can change. > I guess the openmp code needs to mark_used the copy constructor or the like.
I'll have a look, though no guarantee I manage it this week. Jakub