https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83756
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|gcc (mingw64) 7.2.0 ICE in |gcc ICE in gimplify_expr on |gimplify_expr on |boost::call_once |boost::call_once |(-fms-extensions) Keywords| |ice-on-valid-code --- Comment #11 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Reduced testcase: template <class Fp, class A0, class ...Args> inline auto invoke(Fp && f, A0 && a0, Args && ...args) -> decltype(((*(a0)).*f)((args)...)) { } template <class Fp, class A0> inline auto invoke(Fp && f, A0 && a0) -> decltype((*(a0)).*f) { return (*(a0)).*f; } struct A { void doA(); void doB() { } }; void A::doA() { invoke(&A::doB, this); }