diff --git a/Common/LuaBindings.cpp b/Common/LuaBindings.cpp
index dee1be39d4cb133d7b7aed17ede24e33f6bf6afb..489211eef36c8ad3663823790fe9a41692805fcc 100644
--- a/Common/LuaBindings.cpp
+++ b/Common/LuaBindings.cpp
@@ -43,7 +43,7 @@ extern "C" {
 #endif
 
 template <>
-int luaCall(lua_State *L,void (*_f)()) {
+int luaCall<void>(lua_State *L,void (*_f)()) {
   if (lua_gettop(L)==1)
     lua_remove(L,1);
   (*(_f))();
diff --git a/Common/LuaBindings.h b/Common/LuaBindings.h
index 1f84e246d8dc2572adf0408be5c53952fe8cec88..9a7a015e8027eb7c1b8730e4d2d198d732ae4f48 100644
--- a/Common/LuaBindings.h
+++ b/Common/LuaBindings.h
@@ -498,7 +498,7 @@ static int luaCall(lua_State *L, void (*_f)(t0)) {
   return 1;
 };
 template <>
-int luaCall(lua_State *L,void (*_f)());
+int luaCall<void>(lua_State *L,void (*_f)());
 
 //const, return
 template <typename tObj, typename tRet, typename t0, typename t1, typename t2, typename t3>