Browse Source

Revert comment, this raised another warning, and I could not find a pattern that works

Marc Gilleron 4 years ago
parent
commit
4c0763cd88
1 changed files with 5 additions and 2 deletions
  1. 5 2
      include/core/Godot.hpp

+ 5 - 2
include/core/Godot.hpp

@@ -210,14 +210,17 @@ void register_tool_class() {
 typedef godot_variant (*__godot_wrapper_method)(godot_object *, void *, void *, int, godot_variant **);
 typedef godot_variant (*__godot_wrapper_method)(godot_object *, void *, void *, int, godot_variant **);
 
 
 template <class T, class R, class... args>
 template <class T, class R, class... args>
-const char *___get_method_class_name(R (T::*/*p*/)(args... a)) {
+const char *___get_method_class_name(R (T::*p)(args... a)) {
 	static_assert(T::___CLASS_IS_SCRIPT, "This function must only be used on custom classes");
 	static_assert(T::___CLASS_IS_SCRIPT, "This function must only be used on custom classes");
+	(void)p; // To avoid "unused parameter" warnings. `p` is required for template matching.
 	return T::___get_class_name();
 	return T::___get_class_name();
 }
 }
 
 
+// This second version is also required to match constant functions
 template <class T, class R, class... args>
 template <class T, class R, class... args>
-const char *___get_method_class_name(R (T::*/*p*/)(args... a) const) {
+const char *___get_method_class_name(R (T::*p)(args... a) const) {
 	static_assert(T::___CLASS_IS_SCRIPT, "This function must only be used on custom classes");
 	static_assert(T::___CLASS_IS_SCRIPT, "This function must only be used on custom classes");
+	(void)p; // To avoid "unused parameter" warnings. `p` is required for template matching.
 	return T::___get_class_name();
 	return T::___get_class_name();
 }
 }