https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87080
--- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Probably with this: --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -9196,6 +9196,9 @@ maybe_warn_pessimizing_move (tree retval, tree functype) if (!CLASS_TYPE_P (functype)) return; + if (processing_template_decl) + return; + /* We're looking for *std::move<T&> (&arg). */ if (REFERENCE_REF_P (retval) && TREE_CODE (TREE_OPERAND (retval, 0)) == CALL_EXPR)