@@ -991,14 +991,14 @@ class method<Name(Parameters...), ReturnType, Policy>
991991 using return_type = ReturnType;
992992 using function_type = ReturnType (*)(detail::remove_virtual<Parameters>...);
993993
994- static method fn;
994+ inline static method fn;
995+
996+ template <auto >
997+ inline static function_type next;
995998
996999 auto operator ()(detail::remove_virtual<Parameters>... args) const
9971000 -> ReturnType;
9981001
999- template <auto >
1000- static function_type next;
1001-
10021002 private:
10031003 template <
10041004 auto Overrider, typename OverriderReturn,
@@ -1042,20 +1042,6 @@ class method<Name(Parameters...), ReturnType, Policy>
10421042 };
10431043};
10441044
1045- template <
1046- typename Name, typename ... Parameters, typename ReturnType, class Policy >
1047- method<Name(Parameters...), ReturnType, Policy>
1048- method<Name(Parameters...), ReturnType, Policy>::fn;
1049-
1050- template <
1051- typename Name, typename ... Parameters, typename ReturnType, class Policy >
1052- template <auto >
1053- typename method<Name(Parameters...), ReturnType, Policy>::FunctionPointer
1054- method<Name(Parameters...), ReturnType, Policy>::next;
1055-
1056- template <typename T>
1057- constexpr bool is_method = std::is_base_of_v<detail::method_info, T>;
1058-
10591045template <
10601046 typename Name, typename ... Parameters, typename ReturnType, class Policy >
10611047method<Name(Parameters...), ReturnType, Policy>::method() {
0 commit comments