+2019-09-11 Jonathan Wakely <jwakely@redhat.com>
+
+ * testsuite/20_util/result_of/sfinae_friendly_1.cc: Add -Wno-volatile
+ for C++2a and up. Define HAS_52748_FIXED and fix incorrect tests.
+ * testsuite/tr1/3_function_objects/result_of.cc: Add -Wno-volatile
+ for C++2a and up.
+
2019-09-10 Jonathan Wakely <jwakely@redhat.com>
* include/std/type_traits (__do_common_type_impl): Implement
// { dg-do compile { target c++11 } }
+// { dg-additional-options "-Wno-volatile" { target c++2a } }
// Copyright (C) 2012-2019 Free Software Foundation, Inc.
//
#include <cstddef>
#include <type_traits>
-// TODO: Uncomment the following define once gcc has fixed bug 52748
+// Uncomment the following define once gcc has fixed bug 52748
// (incomplete types in function call expressions):
-//#define HAS_52748_FIXED
+#define HAS_52748_FIXED
// Helper types:
struct has_type_impl
static_assert(is_type<std::result_of
<variable_functor<Ukn>&(int, int, int)>, Ukn>(), "Error!");
-static_assert(is_type<std::result_of<PMSIncomplete(int)>, Ukn>(), "Error!");
-static_assert(is_type<std::result_of<PMSIncomplete&(int)>, Ukn>(), "Error!");
-static_assert(is_type<std::result_of<PMSIncomplete&&(int)>, Ukn>(), "Error!");
+static_assert(is_type<std::result_of<PMSIncomplete(S*, int)>, Ukn>(), "Error!");
+static_assert(is_type<std::result_of<PMSIncomplete&(const S&, int)>, Ukn>(), "Error!");
+static_assert(is_type<std::result_of<PMSIncomplete&&(S&&, int)>, Ukn>(), "Error!");
static_assert(is_type<std::result_of<FuncIncomplete(int)>, Ukn>(), "Error!");
static_assert(is_type<std::result_of<FuncIncomplete&(int)>, Ukn>(), "Error!");