From 95e02f2f5efa7e2ec577e367428b8ca49c3a8a5b Mon Sep 17 00:00:00 2001
From: Peter Dimov
+
BOOST_NO_FUNCTION_TEMPLATE_ORDERING
+ Compiler
+ The compiler does not
+ perform function template ordering or its function
+ template ordering is incorrect.
+ template<typename T> void f(T); // #1
+template<typename T, typename U> void f(T (*)(U)); // #2
+
+void bar(int);
+
+f(&bar); // should choose #2.
+
BOOST_NO_INCLASS_MEMBER_INITIALIZATION
Compiler
@@ -719,16 +732,13 @@ class X { ... };
specific.
-
@@ -790,7 +800,7 @@ present.BOOST_WEAK_FUNCTION_TEMPLATE_ORDERING
+ BOOST_NO_VOID_RETURNS
Compiler
The compiler does not
- perform function template ordering or its function
- template ordering is incorrect.
template<typename T> void f(T); // #1
-template<typename T, typename U> void f(T (*)(U)); // #2
-
-void bar(int);
-
-f(&bar); // should choose #2.
+ allow a void function to return the result of calling
+ another void function.
+void f() {}
+void g() { return f(); }