From 80b3d28f4a9e518bf40b35f786199919180bfcd4 Mon Sep 17 00:00:00 2001
From: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date: Tue, 9 Dec 1997 11:50:08 -0200
Subject: details (mainly error messages)

---
 lbuiltin.c | 39 ++++++++++++---------------------------
 1 file changed, 12 insertions(+), 27 deletions(-)

(limited to 'lbuiltin.c')

diff --git a/lbuiltin.c b/lbuiltin.c
index 5d6274c3..e48e1d5d 100644
--- a/lbuiltin.c
+++ b/lbuiltin.c
@@ -1,5 +1,5 @@
 /*
-** $Id: lbuiltin.c,v 1.13 1997/11/28 12:39:45 roberto Exp roberto $
+** $Id: lbuiltin.c,v 1.14 1997/12/01 20:30:44 roberto Exp roberto $
 ** Built-in functions
 ** See Copyright Notice in lua.h
 */
@@ -23,21 +23,6 @@
 
 
 
-static lua_Object tablearg (int arg)
-{
-  lua_Object o = lua_getparam(arg);
-  luaL_arg_check(lua_istable(o), arg, "table expected");
-  return o;
-}
-
-static lua_Object functionarg (int arg)
-{
-  lua_Object o = lua_getparam(arg);
-  luaL_arg_check(lua_isfunction(o), arg, "function expected");
-  return o;
-}
-
-
 static void pushstring (TaggedString *s)
 {
   TObject o;
@@ -71,7 +56,7 @@ static void nextvar (void)
 
 static void foreachvar (void)
 {
-  TObject f = *luaA_Address(functionarg(1));
+  TObject f = *luaA_Address(luaL_functionarg(1));
   GCnode *g;
   StkId name = L->Cstack.base++;  /* place to keep var name (to avoid GC) */
   ttype(L->stack.stack+name) = LUA_T_NIL;
@@ -95,7 +80,7 @@ static void foreachvar (void)
 
 static void next (void)
 {
-  lua_Object o = tablearg(1);
+  lua_Object o = luaL_tablearg(1);
   lua_Object r = luaL_nonnullarg(2);
   Node *n = luaH_next(luaA_Address(o), luaA_Address(r));
   if (n) {
@@ -107,8 +92,8 @@ static void next (void)
 
 static void foreach (void)
 {
-  TObject t = *luaA_Address(tablearg(1));
-  TObject f = *luaA_Address(functionarg(2));
+  TObject t = *luaA_Address(luaL_tablearg(1));
+  TObject f = *luaA_Address(luaL_functionarg(2));
   int i;
   for (i=0; i<avalue(&t)->nhash; i++) {
     Node *nd = &(avalue(&t)->node[i]);
@@ -165,7 +150,9 @@ static char *to_string (lua_Object obj)
     }
     case LUA_T_NIL:
       return "nil";
-    default: return "<unknown object>";
+    default: 
+      lua_error("internal error");
+      return NULL;  /* to avoid warnings */
   }
 }
 
@@ -203,9 +190,7 @@ static void lua_obj2number (void)
 
 static void luaI_error (void)
 {
-  char *s = lua_getstring(lua_getparam(1));
-  if (s == NULL) s = "(no message)";
-  lua_error(s);
+  lua_error(lua_getstring(lua_getparam(1)));
 }
 
 
@@ -262,7 +247,7 @@ static int getnarg (lua_Object table)
 static void luaI_call (void)
 {
   lua_Object f = luaL_nonnullarg(1);
-  lua_Object arg = tablearg(2);
+  lua_Object arg = luaL_tablearg(2);
   char *options = luaL_opt_string(3, "");
   lua_Object err = lua_getparam(4);
   int narg = getnarg(arg);
@@ -302,7 +287,7 @@ static void luaI_call (void)
 
 static void settag (void)
 {
-  lua_Object o = tablearg(1);
+  lua_Object o = luaL_tablearg(1);
   lua_pushobject(o);
   lua_settag(luaL_check_number(2));
 }
@@ -354,7 +339,7 @@ static void gettagmethod (void)
 
 static void seterrormethod (void)
 {
-  lua_Object nf = functionarg(1);
+  lua_Object nf = luaL_functionarg(1);
   lua_pushobject(nf);
   lua_pushobject(lua_seterrormethod());
 }
-- 
cgit v1.2.3-55-g6feb