https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118488
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to waffl3x from comment #6) > (In reply to Jason Merrill from comment #5) > > (In reply to Jason Merrill from comment #4) > > > Rejecting expl2 is just a bug. > > > > ...unless OpenMP decides that we should copy explicit template arguments for > > PR118791. > > Reposting from PR118791, > > (OpenMP 6.0 113:1-2) > variant substitution > The replacement of a call to a base function by a call to a function > variant > > I would argue this specifies that would be required, but I recognize > the can of worms this is opening so more discussion is probably > warranted. I think that is meant for the simd stuff only. Say int base (int, int, float); then could map to __v8si variant (__v8si, __v8si, __v8sf); or __v4si variant2 (__v4si, __v4si, __v4sf); etc. based on the simd length in the loop etc. This is something we don't implement yet and I think clang doesn't either.