// PR c++/107065 // { dg-do compile { target c++11 } } template<class, class> struct is_same { static constexpr bool value = false; }; template<class T> struct is_same<T, T> { static constexpr bool value = true; }; int main () { bool b = true; static_assert (is_same<decltype (!(!b)), bool>::value, ""); auto bb = (!(!b)); static_assert (is_same<decltype (bb), bool>::value, ""); }