vppinfra: enfoce function pointer cast in CLIB_MARCH_FN_POINTER
[vpp.git] / src / vppinfra / cpu.h
index 40857fb..c770b9c 100644 (file)
@@ -81,8 +81,8 @@ clib_march_select_fn_ptr (clib_march_fn_registration * r)
   return rv;
 }
 
-#define CLIB_MARCH_FN_POINTER(fn) \
-  clib_march_select_fn_ptr (fn##_march_fn_registrations);
+#define CLIB_MARCH_FN_POINTER(fn)                                             \
+  (__typeof__ (fn) *) clib_march_select_fn_ptr (fn##_march_fn_registrations);
 
 #define _CLIB_MARCH_FN_REGISTRATION(fn) \
 static clib_march_fn_registration \