https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84075
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |10.5 CC| |ppalka at gcc dot gnu.org Summary|Template parameter not |[10/11/12/13 Regression] |resolved: invalid |Template parameter not |application of ‘sizeof’ to |resolved: invalid |incomplete type |application of ‘sizeof’ to |‘boost::serialization::U’ |incomplete type | |‘boost::serialization::U’ --- Comment #12 from Patrick Palka <ppalka at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #11) > (In reply to ensadc from comment #4) > > Further reduced: > > > > template < int > struct b { }; > > template < typename n > struct g { > > typedef b< sizeof(n) > l; > > }; > > template < typename h, typename = typename g< h >::l > class aa {}; > > template < typename h, typename bz > > > void bj(aa< h, bz >, int); > > template < template < class > class ct > void bj(ct< class U >); > > void f() { > > bj(aa<int>(), 0); > > } > > ---- > > Hmm, it comes with -std=c++11 and -std=c++14 but not -std=c++17. Started to be rejected (with -std=c++17) since the introduction of -fnew-ttp-matching r7-5537-g31bfc9b9dd65ec