lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 1a553f9199f99bd529c542ef3be60b7a48f4ff2a
parent 0ca225d33a34377d8339aa562422c0a2918891e2
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Wed, 19 Mar 2003 18:15:50 -0300

better error messages

Diffstat:
Mliolib.c | 9++++-----
Mlstrlib.c | 6+++---
2 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/liolib.c b/liolib.c @@ -1,5 +1,5 @@ /* -** $Id: liolib.c,v 2.37 2003/03/14 19:08:11 roberto Exp roberto $ +** $Id: liolib.c,v 2.38 2003/03/18 12:25:32 roberto Exp roberto $ ** Standard I/O (and system) library ** See Copyright Notice in lua.h */ @@ -377,8 +377,7 @@ static int g_read (lua_State *L, FILE *f, int first) { } else { const char *p = lua_tostring(L, n); - if (!p || p[0] != '*') - return luaL_error(L, "invalid `read' option"); + luaL_argcheck(L, p && p[0] == '*', n, "invalid option"); switch (p[1]) { case 'n': /* number */ success = read_number(L, f); @@ -391,7 +390,7 @@ static int g_read (lua_State *L, FILE *f, int first) { success = 1; /* always success */ break; case 'w': /* word */ - return luaL_error(L, "obsolete option `*w'"); + return luaL_error(L, "obsolete option `*w' to `read'"); default: return luaL_argerror(L, n, "invalid format"); } @@ -563,7 +562,7 @@ static int io_tmpname (lua_State *L) { #else char buff[L_tmpnam]; if (tmpnam(buff) != buff) - return luaL_error(L, "unable to generate a unique filename"); + return luaL_error(L, "unable to generate a unique filename in `tmpname'"); lua_pushstring(L, buff); return 1; #endif diff --git a/lstrlib.c b/lstrlib.c @@ -1,5 +1,5 @@ /* -** $Id: lstrlib.c,v 1.95 2003/03/11 12:24:34 roberto Exp roberto $ +** $Id: lstrlib.c,v 1.96 2003/03/14 18:59:53 roberto Exp roberto $ ** Standard library for string operations and pattern-matching ** See Copyright Notice in lua.h */ @@ -695,7 +695,7 @@ static int str_format (lua_State *L) { char buff[MAX_ITEM]; /* to store the formatted item */ int hasprecision = 0; if (isdigit(uchar(*strfrmt)) && *(strfrmt+1) == '$') - return luaL_error(L, "obsolete `format' option (d$)"); + return luaL_error(L, "obsolete option (d$) to `format'"); arg++; strfrmt = scanformat(L, strfrmt, form, &hasprecision); switch (*strfrmt++) { @@ -732,7 +732,7 @@ static int str_format (lua_State *L) { } } default: { /* also treat cases `pnLlh' */ - return luaL_error(L, "invalid option in `format'"); + return luaL_error(L, "invalid option to `format'"); } } luaL_addlstring(&b, buff, strlen(buff));