- case LUA_TNUMBER: /* numbers */
- p += sprintf(p, "%g", lua_tonumber(L, i));
- break;
-
- case LUA_TTABLE:
- p += sprintf(p, "Table");
- break;
-
- default: /* other values */
- p += sprintf(p, "???");
-/* if ((ptr = luaL_checkudata(L,i,TASK_MODULE_NAME))) {
- p+=sprintf(p,"task");
- } else {
- p+=printf(p,"%s", lua_typename(L, t));
- }*/
- break;
-
- }
- p += sprintf(p, " "); /* put a separator */
- }
- XBT_INFO("%s%s", msg, buff);
+ if (p == NULL || !lua_getmetatable(L, ud) || !lua_rawequal(L, -1, -2))
+ luaL_typerror(L, ud, tname);
+ lua_pop(L, 2);
+ return p;