Commit 526d21da authored by Johny Mattsson's avatar Johny Mattsson Committed by Terry Ellison
Browse files

Major cleanup - c_whatever is finally history. (#2838)

The PR removed the bulk of non-newlib headers from the NodeMCU source base.  
app/libc has now been cut down to the bare minimum overrides to shadow the 
corresponding functions in the SDK's libc. The old c_xyz.h headerfiles have been 
nuked in favour of the standard <xyz.h> headers, with a few exceptions over in 
sdk-overrides. Again, shipping a libc.a without headers is a terrible thing to do. We're 
still living on a prayer that libc was configured the same was as a default-configured
xtensa gcc toolchain assumes it is. That part I cannot do anything about, unfortunately, 
but it's no worse than it has been before.

This enables our source files to compile successfully using the standard header files, 
and use the typical malloc()/calloc()/realloc()/free(), the strwhatever()s and 
memwhatever()s. These end up, through macro and linker magic, mapped to the 
appropriate SDK or ROM functions.
parent 9f8b74de
#include "c_stdio.h" #include <stdio.h>
// #include "driver/uart.h"
int c_stdin = 999; int c_stdin = 999;
int c_stdout = 1000; int c_stdout = 1000;
int c_stderr = 1001; int c_stderr = 1001;
// FILE *c_fopen(const char *_name, const char *_type){
// }
// FILE *c_freopen(const char *_name, const char *_type, FILE *_f){
// }
// FILE *c_tmpfile(void){
// }
// int c_putchar(int c){
// }
// int c_printf(const char *c, ...){
// }
// int c_sprintf(char *c, const char *s, ...){
// }
// int c_fprintf(FILE *f, const char *s, ...){
// }
// int c_fscanf(FILE *f, const char *s, ...){
// }
// int c_fclose(FILE *f){
// }
// int c_fflush(FILE *f){
// }
// int c_setvbuf(FILE *f, char *c, int d, size_t t){
// }
// void c_clearerr(FILE *f){
// }
// int c_fseek(FILE *f, long l, int d){
// }
// long c_ftell( FILE *f){
// }
// int c_fputs(const char *c, FILE *f){
// }
// char *c_fgets(char *c, int d, FILE *f){
// }
// int c_ungetc(int d, FILE *f){
// }
// size_t c_fread(void *p, size_t _size, size_t _n, FILE *f){
// }
// size_t c_fwrite(const void *p, size_t _size, size_t _n, FILE *f){
// }
// int c_feof(FILE *f){
// }
// int c_ferror(FILE *f){
// }
// int c_getc(FILE *f){
// }
#if defined( LUA_NUMBER_INTEGRAL ) #if defined( LUA_NUMBER_INTEGRAL )
#include <stdarg.h>
int sprintf(char *s, const char *fmt, ...)
{
int n;
va_list arg;
va_start(arg, fmt);
n = ets_vsprintf(s, fmt, arg);
va_end(arg);
return n;
}
int vsprintf (char *d, const char *s, va_list ap)
{
return ets_vsprintf(d, s, ap);
}
#else #else
#define FLOATINGPT 1 #define FLOATINGPT 1
...@@ -97,8 +64,7 @@ int c_stderr = 1001; ...@@ -97,8 +64,7 @@ int c_stderr = 1001;
* SUCH DAMAGE. * SUCH DAMAGE.
* *
*/ */
//#include <string.h> #include <string.h>
#include "c_string.h"
char * char *
strichr(char *p, int c) strichr(char *p, int c)
...@@ -147,8 +113,7 @@ strichr(char *p, int c) ...@@ -147,8 +113,7 @@ strichr(char *p, int c)
* SUCH DAMAGE. * SUCH DAMAGE.
* *
*/ */
//#include <string.h> #include <string.h>
#include "c_string.h"
#define FMT_RJUST 0 #define FMT_RJUST 0
#define FMT_LJUST 1 #define FMT_LJUST 1
...@@ -221,10 +186,8 @@ str_fmt(char *p, int size, int fmt) ...@@ -221,10 +186,8 @@ str_fmt(char *p, int size, int fmt)
* SUCH DAMAGE. * SUCH DAMAGE.
* *
*/ */
//#include <string.h> #include <string.h>
//#include <ctype.h> #include <ctype.h>
#include "c_string.h"
#include "c_ctype.h"
void void
strtoupper(char *p) strtoupper(char *p)
...@@ -269,10 +232,9 @@ strtoupper(char *p) ...@@ -269,10 +232,9 @@ strtoupper(char *p)
*/ */
//#include <sys/types.h> //#include <sys/types.h>
//#include <string.h> #include <string.h>
#include <stdint.h>
//#include <pmon.h> //#include <pmon.h>
#include "c_string.h"
typedef unsigned int u_int32_t;
typedef unsigned int u_int; typedef unsigned int u_int;
typedef unsigned long u_long; typedef unsigned long u_long;
typedef int32_t register_t; typedef int32_t register_t;
...@@ -371,7 +333,7 @@ _atob (u_quad_t *vp, char *p, int base) ...@@ -371,7 +333,7 @@ _atob (u_quad_t *vp, char *p, int base)
* converts p to binary result in vp, rtn 1 on success * converts p to binary result in vp, rtn 1 on success
*/ */
int int
atob(u_int32_t *vp, char *p, int base) atob(uint32_t *vp, char *p, int base)
{ {
u_quad_t v; u_quad_t v;
...@@ -554,13 +516,10 @@ gethex(int32_t *vp, char *p, int n) ...@@ -554,13 +516,10 @@ gethex(int32_t *vp, char *p, int n)
* *
*/ */
//#include <stdio.h> //#include <stdio.h>
//#include <stdarg.h>
//#include <string.h>
//#include <ctype.h>
//#include <pmon.h> //#include <pmon.h>
#include "c_stdarg.h" #include <stdarg.h>
#include "c_string.h" #include <string.h>
#include "c_ctype.h" #include <ctype.h>
/* /*
* int vsprintf(d,s,ap) * int vsprintf(d,s,ap)
...@@ -1091,10 +1050,9 @@ exponent(char *p, int exp, int fmtch) ...@@ -1091,10 +1050,9 @@ exponent(char *p, int exp, int fmtch)
} }
return (p); return (p);
} }
#endif /* FLOATINGPT */
int c_sprintf(char *s, const char *fmt, ...) int sprintf(char *s, const char *fmt, ...)
{ {
int n; int n;
va_list arg; va_list arg;
...@@ -1104,4 +1062,6 @@ int c_sprintf(char *s, const char *fmt, ...) ...@@ -1104,4 +1062,6 @@ int c_sprintf(char *s, const char *fmt, ...)
return n; return n;
} }
#endif /* FLOATINGPT */
#endif #endif
//#include "user_interface.h"
#include "user_config.h" #include "user_config.h"
#ifdef LUA_CROSS_COMPILER
#include <stdlib.h> #include <stdlib.h>
#include <ctype.h> #include <ctype.h>
#include <string.h> #include <string.h>
#ifdef LUA_CROSS_COMPILER
#define ICACHE_RODATA_ATTR #define ICACHE_RODATA_ATTR
#define TRUE 1 #define TRUE 1
#define FALSE 0 #define FALSE 0
#else
#include "c_stdlib.h"
#include "c_types.h"
#include "c_string.h"
#include <_ansi.h>
//#include <reent.h>
//#include "mprec.h"
#endif #endif
double powersOf10[] ICACHE_STORE_ATTR ICACHE_RODATA_ATTR = /* Table giving binary powers of 10. Entry */ double powersOf10[] ICACHE_STORE_ATTR ICACHE_RODATA_ATTR = /* Table giving binary powers of 10. Entry */
{ {
...@@ -32,7 +22,7 @@ double powersOf10[] ICACHE_STORE_ATTR ICACHE_RODATA_ATTR = /* Table giving bin ...@@ -32,7 +22,7 @@ double powersOf10[] ICACHE_STORE_ATTR ICACHE_RODATA_ATTR = /* Table giving bin
1.0e256 1.0e256
}; };
double c_strtod(const char *string, char **endPtr) double strtod(const char *string, char **endPtr)
{ {
int maxExponent = 511; /* Largest possible base 10 exponent. Any int maxExponent = 511; /* Largest possible base 10 exponent. Any
* exponent larger than this will already * exponent larger than this will already
...@@ -256,10 +246,3 @@ done: ...@@ -256,10 +246,3 @@ done:
} }
return fraction; return fraction;
} }
// long c_strtol(const char *__n, char **__end_PTR, int __base){
// }
// unsigned long c_strtoul(const char *__n, char **__end_PTR, int __base){
// }
// long long c_strtoll(const char *__n, char **__end_PTR, int __base){
// }
...@@ -10,9 +10,8 @@ ...@@ -10,9 +10,8 @@
#include "lua.h" #include "lua.h"
//#include C_HEADER_ASSERT #include <math.h>
#include C_HEADER_MATH #include <string.h>
#include C_HEADER_STRING
#include "lapi.h" #include "lapi.h"
#include "ldebug.h" #include "ldebug.h"
#include "ldo.h" #include "ldo.h"
...@@ -463,7 +462,7 @@ LUA_API void lua_pushstring (lua_State *L, const char *s) { ...@@ -463,7 +462,7 @@ LUA_API void lua_pushstring (lua_State *L, const char *s) {
if (s == NULL) if (s == NULL)
lua_pushnil(L); lua_pushnil(L);
else else
lua_pushlstring(L, s, c_strlen(s)); lua_pushlstring(L, s, strlen(s));
} }
......
...@@ -7,18 +7,19 @@ ...@@ -7,18 +7,19 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_CTYPE #include <ctype.h>
#ifdef __MINGW__ #ifdef __MINGW__
#include <errno.h> #include <errno.h>
#else #else
#ifdef _MSC_VER //msvc #defines errno, which interferes with our #include macro #ifdef _MSC_VER //msvc #defines errno, which interferes with our #include macro
#undef errno #undef errno
#endif #endif
#include C_HEADER_ERRNO #include <errno.h>
#endif #endif
#include C_HEADER_STDIO #include <stdio.h>
#include C_HEADER_STDLIB #include <stdlib.h>
#include C_HEADER_STRING #include <string.h>
#include <fcntl.h>
#ifndef LUA_CROSS_COMPILER #ifndef LUA_CROSS_COMPILER
#include "vfs.h" #include "vfs.h"
#include "user_interface.h" #include "user_interface.h"
...@@ -100,7 +101,7 @@ static void scanBlocks (void) { ...@@ -100,7 +101,7 @@ static void scanBlocks (void) {
for (i=0; p ;i++) { for (i=0; p ;i++) {
s = memcmp(p->mark, marker, MARKSIZE) ? '<' : ' '; s = memcmp(p->mark, marker, MARKSIZE) ? '<' : ' ';
e = memcmp(cast(char *, p+1) + p->size, marker, MARKSIZE) ? '>' : ' '; e = memcmp(cast(char *, p+1) + p->size, marker, MARKSIZE) ? '>' : ' ';
c_printf("%4u %p %8lu %c %c\n", i, p, p->size, s, e); printf("%4u %p %8lu %c %c\n", i, p, p->size, s, e);
ASSERT(p->next); ASSERT(p->next);
p = p->next; p = p->next;
} }
...@@ -136,7 +137,7 @@ static void freeblock (MemHeader *block) { ...@@ -136,7 +137,7 @@ static void freeblock (MemHeader *block) {
p->next = next; p->next = next;
} }
fillmem(block, sizeof(MemHeader) + size + MARKSIZE); /* erase block */ fillmem(block, sizeof(MemHeader) + size + MARKSIZE); /* erase block */
c_free(block); /* actually free block */ free(block); /* actually free block */
mc.numblocks--; /* update counts */ mc.numblocks--; /* update counts */
mc.total -= size; mc.total -= size;
} }
...@@ -163,7 +164,7 @@ void *debug_realloc (void *b, size_t oldsize, size_t size) { ...@@ -163,7 +164,7 @@ void *debug_realloc (void *b, size_t oldsize, size_t size) {
MemHeader *newblock; MemHeader *newblock;
size_t commonsize = (oldsize < size) ? oldsize : size; size_t commonsize = (oldsize < size) ? oldsize : size;
size_t realsize = sizeof(MemHeader) + size + MARKSIZE; size_t realsize = sizeof(MemHeader) + size + MARKSIZE;
newblock = cast(MemHeader *, c_malloc(realsize)); /* alloc a new block */ newblock = cast(MemHeader *, malloc(realsize)); /* alloc a new block */
if (newblock == NULL) if (newblock == NULL)
return NULL; /* really out of memory? */ return NULL; /* really out of memory? */
if (block) { if (block) {
...@@ -190,7 +191,7 @@ void *debug_realloc (void *b, size_t oldsize, size_t size) { ...@@ -190,7 +191,7 @@ void *debug_realloc (void *b, size_t oldsize, size_t size) {
/* }====================================================================== */ /* }====================================================================== */
#else #else
#define this_realloc(p,os,s) c_realloc(p,s) #define this_realloc(p,os,s) realloc(p,s)
#endif /* DEBUG_ALLOCATOR */ #endif /* DEBUG_ALLOCATOR */
/* /*
...@@ -205,7 +206,7 @@ LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) { ...@@ -205,7 +206,7 @@ LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) {
if (!lua_getstack(L, 0, &ar)) /* no stack frame? */ if (!lua_getstack(L, 0, &ar)) /* no stack frame? */
return luaL_error(L, "bad argument #%d (%s)", narg, extramsg); return luaL_error(L, "bad argument #%d (%s)", narg, extramsg);
lua_getinfo(L, "n", &ar); lua_getinfo(L, "n", &ar);
if (c_strcmp(ar.namewhat, "method") == 0) { if (strcmp(ar.namewhat, "method") == 0) {
narg--; /* do not count `self' */ narg--; /* do not count `self' */
if (narg == 0) /* error is in the self argument itself? */ if (narg == 0) /* error is in the self argument itself? */
return luaL_error(L, "calling " LUA_QS " on bad self (%s)", return luaL_error(L, "calling " LUA_QS " on bad self (%s)",
...@@ -262,7 +263,7 @@ LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def, ...@@ -262,7 +263,7 @@ LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def,
luaL_checkstring(L, narg); luaL_checkstring(L, narg);
int i; int i;
for (i=0; lst[i]; i++) for (i=0; lst[i]; i++)
if (c_strcmp(lst[i], name) == 0) if (strcmp(lst[i], name) == 0)
return i; return i;
return luaL_argerror(L, narg, return luaL_argerror(L, narg,
lua_pushfstring(L, "invalid option " LUA_QS, name)); lua_pushfstring(L, "invalid option " LUA_QS, name));
...@@ -352,7 +353,7 @@ LUALIB_API const char *luaL_optlstring (lua_State *L, int narg, ...@@ -352,7 +353,7 @@ LUALIB_API const char *luaL_optlstring (lua_State *L, int narg,
const char *def, size_t *len) { const char *def, size_t *len) {
if (lua_isnoneornil(L, narg)) { if (lua_isnoneornil(L, narg)) {
if (len) if (len)
*len = (def ? c_strlen(def) : 0); *len = (def ? strlen(def) : 0);
return def; return def;
} }
else return luaL_checklstring(L, narg, len); else return luaL_checklstring(L, narg, len);
...@@ -533,10 +534,10 @@ LUALIB_API int luaL_getn (lua_State *L, int t) { ...@@ -533,10 +534,10 @@ LUALIB_API int luaL_getn (lua_State *L, int t) {
LUALIB_API const char *luaL_gsub (lua_State *L, const char *s, const char *p, LUALIB_API const char *luaL_gsub (lua_State *L, const char *s, const char *p,
const char *r) { const char *r) {
const char *wild; const char *wild;
size_t l = c_strlen(p); size_t l = strlen(p);
luaL_Buffer b; luaL_Buffer b;
luaL_buffinit(L, &b); luaL_buffinit(L, &b);
while ((wild = c_strstr(s, p)) != NULL) { while ((wild = strstr(s, p)) != NULL) {
luaL_addlstring(&b, s, wild - s); /* push prefix */ luaL_addlstring(&b, s, wild - s); /* push prefix */
luaL_addstring(&b, r); /* push replacement in place of pattern */ luaL_addstring(&b, r); /* push replacement in place of pattern */
s = wild + l; /* continue after `p' */ s = wild + l; /* continue after `p' */
...@@ -552,8 +553,8 @@ LUALIB_API const char *luaL_findtable (lua_State *L, int idx, ...@@ -552,8 +553,8 @@ LUALIB_API const char *luaL_findtable (lua_State *L, int idx,
const char *e; const char *e;
lua_pushvalue(L, idx); lua_pushvalue(L, idx);
do { do {
e = c_strchr(fname, '.'); e = strchr(fname, '.');
if (e == NULL) e = fname + c_strlen(fname); if (e == NULL) e = fname + strlen(fname);
lua_pushlstring(L, fname, e - fname); lua_pushlstring(L, fname, e - fname);
lua_rawget(L, -2); lua_rawget(L, -2);
...@@ -634,7 +635,7 @@ LUALIB_API void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l) { ...@@ -634,7 +635,7 @@ LUALIB_API void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l) {
LUALIB_API void luaL_addstring (luaL_Buffer *B, const char *s) { LUALIB_API void luaL_addstring (luaL_Buffer *B, const char *s) {
luaL_addlstring(B, s, c_strlen(s)); luaL_addlstring(B, s, strlen(s));
} }
...@@ -650,7 +651,7 @@ LUALIB_API void luaL_addvalue (luaL_Buffer *B) { ...@@ -650,7 +651,7 @@ LUALIB_API void luaL_addvalue (luaL_Buffer *B) {
size_t vl; size_t vl;
const char *s = lua_tolstring(L, -1, &vl); const char *s = lua_tolstring(L, -1, &vl);
if (vl <= bufffree(B)) { /* fit into buffer? */ if (vl <= bufffree(B)) { /* fit into buffer? */
c_memcpy(B->p, s, vl); /* put it there */ memcpy(B->p, s, vl); /* put it there */
B->p += vl; B->p += vl;
lua_pop(L, 1); /* remove from stack */ lua_pop(L, 1); /* remove from stack */
} }
...@@ -730,14 +731,14 @@ static const char *getF (lua_State *L, void *ud, size_t *size) { ...@@ -730,14 +731,14 @@ static const char *getF (lua_State *L, void *ud, size_t *size) {
*size = 1; *size = 1;
return "\n"; return "\n";
} }
if (c_feof(lf->f)) return NULL; if (feof(lf->f)) return NULL;
*size = c_fread(lf->buff, 1, sizeof(lf->buff), lf->f); *size = fread(lf->buff, 1, sizeof(lf->buff), lf->f);
return (*size > 0) ? lf->buff : NULL; return (*size > 0) ? lf->buff : NULL;
} }
static int errfile (lua_State *L, const char *what, int fnameindex) { static int errfile (lua_State *L, const char *what, int fnameindex) {
const char *serr = c_strerror(errno); const char *serr = strerror(errno);
const char *filename = lua_tostring(L, fnameindex) + 1; const char *filename = lua_tostring(L, fnameindex) + 1;
lua_pushfstring(L, "cannot %s %s: %s", what, filename, serr); lua_pushfstring(L, "cannot %s %s: %s", what, filename, serr);
lua_remove(L, fnameindex); lua_remove(L, fnameindex);
...@@ -757,27 +758,27 @@ LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) { ...@@ -757,27 +758,27 @@ LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) {
} }
else { else {
lua_pushfstring(L, "@%s", filename); lua_pushfstring(L, "@%s", filename);
lf.f = c_fopen(filename, "r"); lf.f = fopen(filename, "r");
if (lf.f == NULL) return errfile(L, "open", fnameindex); if (lf.f == NULL) return errfile(L, "open", fnameindex);
} }
c = c_getc(lf.f); c = getc(lf.f);
if (c == '#') { /* Unix exec. file? */ if (c == '#') { /* Unix exec. file? */
lf.extraline = 1; lf.extraline = 1;
while ((c = c_getc(lf.f)) != EOF && c != '\n') ; /* skip first line */ while ((c = getc(lf.f)) != EOF && c != '\n') ; /* skip first line */
if (c == '\n') c = c_getc(lf.f); if (c == '\n') c = getc(lf.f);
} }
if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */ if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */
lf.f = c_freopen(filename, "rb", lf.f); /* reopen in binary mode */ lf.f = freopen(filename, "rb", lf.f); /* reopen in binary mode */
if (lf.f == NULL) return errfile(L, "reopen", fnameindex); if (lf.f == NULL) return errfile(L, "reopen", fnameindex);
/* skip eventual `#!...' */ /* skip eventual `#!...' */
while ((c = c_getc(lf.f)) != EOF && c != LUA_SIGNATURE[0]) {} while ((c = getc(lf.f)) != EOF && c != LUA_SIGNATURE[0]) {}
lf.extraline = 0; lf.extraline = 0;
} }
c_ungetc(c, lf.f); ungetc(c, lf.f);
status = lua_load(L, getF, &lf, lua_tostring(L, -1)); status = lua_load(L, getF, &lf, lua_tostring(L, -1));
readstatus = c_ferror(lf.f); readstatus = ferror(lf.f);
if (filename) c_fclose(lf.f); /* close file (even in case of errors) */ if (filename) fclose(lf.f); /* close file (even in case of errors) */
if (readstatus) { if (readstatus) {
lua_settop(L, fnameindex); /* ignore results from `lua_load' */ lua_settop(L, fnameindex); /* ignore results from `lua_load' */
return errfile(L, "read", fnameindex); return errfile(L, "read", fnameindex);
...@@ -788,8 +789,6 @@ LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) { ...@@ -788,8 +789,6 @@ LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) {
#else #else
#include C_HEADER_FCNTL
typedef struct LoadFSF { typedef struct LoadFSF {
int extraline; int extraline;
int f; int f;
...@@ -893,7 +892,7 @@ LUALIB_API int luaL_loadbuffer (lua_State *L, const char *buff, size_t size, ...@@ -893,7 +892,7 @@ LUALIB_API int luaL_loadbuffer (lua_State *L, const char *buff, size_t size,
LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s) { LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s) {
return luaL_loadbuffer(L, s, c_strlen(s), s); return luaL_loadbuffer(L, s, strlen(s), s);
} }
...@@ -928,7 +927,7 @@ static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) { ...@@ -928,7 +927,7 @@ static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) {
#ifdef DEBUG_ALLOCATOR #ifdef DEBUG_ALLOCATOR
return (void *)this_realloc(ptr, osize, nsize); return (void *)this_realloc(ptr, osize, nsize);
#else #else
c_free(ptr); free(ptr);
return NULL; return NULL;
#endif #endif
} }
...@@ -988,7 +987,7 @@ LUALIB_API void luaL_dbgbreak(void) { ...@@ -988,7 +987,7 @@ LUALIB_API void luaL_dbgbreak(void) {
static int panic (lua_State *L) { static int panic (lua_State *L) {
(void)L; /* to avoid warnings */ (void)L; /* to avoid warnings */
#if defined(LUA_USE_STDIO) #if defined(LUA_USE_STDIO)
c_fprintf(c_stderr, "PANIC: unprotected error in call to Lua API (%s)\n", fprintf(c_stderr, "PANIC: unprotected error in call to Lua API (%s)\n",
lua_tostring(L, -1)); lua_tostring(L, -1));
#else #else
luai_writestringerror("PANIC: unprotected error in call to Lua API (%s)\n", luai_writestringerror("PANIC: unprotected error in call to Lua API (%s)\n",
......
...@@ -8,15 +8,9 @@ ...@@ -8,15 +8,9 @@
#ifndef lauxlib_h #ifndef lauxlib_h
#define lauxlib_h #define lauxlib_h
#include "lua.h" #include "lua.h"
#ifdef LUA_CROSS_COMPILER
#include <stdio.h> #include <stdio.h>
#else
#include "c_stdio.h"
#endif
#if defined(LUA_COMPAT_GETN) #if defined(LUA_COMPAT_GETN)
LUALIB_API int (luaL_getn) (lua_State *L, int t); LUALIB_API int (luaL_getn) (lua_State *L, int t);
......
...@@ -11,9 +11,9 @@ ...@@ -11,9 +11,9 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDIO #include <stdio.h>
#include C_HEADER_STRING #include <string.h>
#include C_HEADER_STDLIB #include <stdlib.h>
#include "lauxlib.h" #include "lauxlib.h"
#include "lualib.h" #include "lualib.h"
#include "lrotable.h" #include "lrotable.h"
...@@ -41,16 +41,16 @@ static int luaB_print (lua_State *L) { ...@@ -41,16 +41,16 @@ static int luaB_print (lua_State *L) {
return luaL_error(L, LUA_QL("tostring") " must return a string to " return luaL_error(L, LUA_QL("tostring") " must return a string to "
LUA_QL("print")); LUA_QL("print"));
#if defined(LUA_USE_STDIO) #if defined(LUA_USE_STDIO)
if (i>1) c_fputs("\t", c_stdout); if (i>1) fputs("\t", c_stdout);
c_fputs(s, c_stdout); fputs(s, c_stdout);
#else #else
if (i>1) luai_writestring("\t", 1); if (i>1) luai_writestring("\t", 1);
luai_writestring(s, c_strlen(s)); luai_writestring(s, strlen(s));
#endif #endif
lua_pop(L, 1); /* pop result */ lua_pop(L, 1); /* pop result */
} }
#if defined(LUA_USE_STDIO) #if defined(LUA_USE_STDIO)
c_fputs("\n", c_stdout); fputs("\n", c_stdout);
#else #else
luai_writeline(); luai_writeline();
#endif #endif
...@@ -72,7 +72,7 @@ static int luaB_tonumber (lua_State *L) { ...@@ -72,7 +72,7 @@ static int luaB_tonumber (lua_State *L) {
char *s2; char *s2;
unsigned long n; unsigned long n;
luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range"); luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range");
n = c_strtoul(s1, &s2, base); n = strtoul(s1, &s2, base);
if (s1 != s2) { /* at least one valid digit? */ if (s1 != s2) { /* at least one valid digit? */
while (isspace((unsigned char)(*s2))) s2++; /* skip trailing spaces */ while (isspace((unsigned char)(*s2))) s2++; /* skip trailing spaces */
if (*s2 == '\0') { /* no invalid trailing characters? */ if (*s2 == '\0') { /* no invalid trailing characters? */
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDLIB #include <stdlib.h>
#include "lcode.h" #include "lcode.h"
#include "ldebug.h" #include "ldebug.h"
...@@ -81,7 +81,7 @@ static void fixjump (FuncState *fs, int pc, int dest) { ...@@ -81,7 +81,7 @@ static void fixjump (FuncState *fs, int pc, int dest) {
Instruction *jmp = &fs->f->code[pc]; Instruction *jmp = &fs->f->code[pc];
int offset = dest-(pc+1); int offset = dest-(pc+1);
lua_assert(dest != NO_JUMP); lua_assert(dest != NO_JUMP);
if (c_abs(offset) > MAXARG_sBx) if (abs(offset) > MAXARG_sBx)
luaX_syntaxerror(fs->ls, "control structure too long"); luaX_syntaxerror(fs->ls, "control structure too long");
SETARG_sBx(*jmp, offset); SETARG_sBx(*jmp, offset);
} }
......
...@@ -10,9 +10,9 @@ ...@@ -10,9 +10,9 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDIO #include <stdio.h>
#include C_HEADER_STDLIB #include <stdlib.h>
#include C_HEADER_STRING #include <string.h>
#include "lauxlib.h" #include "lauxlib.h"
#include "lualib.h" #include "lualib.h"
...@@ -33,7 +33,7 @@ static int db_getstrings (lua_State *L) { ...@@ -33,7 +33,7 @@ static int db_getstrings (lua_State *L) {
GCObject *o; GCObject *o;
#ifndef LUA_CROSS_COMPILER #ifndef LUA_CROSS_COMPILER
const char *opt = lua_tolstring (L, 1, &n); const char *opt = lua_tolstring (L, 1, &n);
if (n==3 && c_memcmp(opt, "ROM", 4) == 0) { if (n==3 && memcmp(opt, "ROM", 4) == 0) {
if (G(L)->ROstrt.hash == NULL) if (G(L)->ROstrt.hash == NULL)
return 0; return 0;
tb = &G(L)->ROstrt; tb = &G(L)->ROstrt;
...@@ -155,24 +155,24 @@ static int db_getinfo (lua_State *L) { ...@@ -155,24 +155,24 @@ static int db_getinfo (lua_State *L) {
if (!lua_getinfo(L1, options, &ar)) if (!lua_getinfo(L1, options, &ar))
return luaL_argerror(L, arg+2, "invalid option"); return luaL_argerror(L, arg+2, "invalid option");
lua_createtable(L, 0, 2); lua_createtable(L, 0, 2);
if (c_strchr(options, 'S')) { if (strchr(options, 'S')) {
settabss(L, "source", ar.source); settabss(L, "source", ar.source);
settabss(L, "short_src", ar.short_src); settabss(L, "short_src", ar.short_src);
settabsi(L, "linedefined", ar.linedefined); settabsi(L, "linedefined", ar.linedefined);
settabsi(L, "lastlinedefined", ar.lastlinedefined); settabsi(L, "lastlinedefined", ar.lastlinedefined);
settabss(L, "what", ar.what); settabss(L, "what", ar.what);
} }
if (c_strchr(options, 'l')) if (strchr(options, 'l'))
settabsi(L, "currentline", ar.currentline); settabsi(L, "currentline", ar.currentline);
if (c_strchr(options, 'u')) if (strchr(options, 'u'))
settabsi(L, "nups", ar.nups); settabsi(L, "nups", ar.nups);
if (c_strchr(options, 'n')) { if (strchr(options, 'n')) {
settabss(L, "name", ar.name); settabss(L, "name", ar.name);
settabss(L, "namewhat", ar.namewhat); settabss(L, "namewhat", ar.namewhat);
} }
if (c_strchr(options, 'L')) if (strchr(options, 'L'))
treatstackoption(L, L1, "activelines"); treatstackoption(L, L1, "activelines");
if (c_strchr(options, 'f')) if (strchr(options, 'f'))
treatstackoption(L, L1, "func"); treatstackoption(L, L1, "func");
return 1; /* return table */ return 1; /* return table */
} }
...@@ -261,9 +261,9 @@ static void hookf (lua_State *L, lua_Debug *ar) { ...@@ -261,9 +261,9 @@ static void hookf (lua_State *L, lua_Debug *ar) {
static int makemask (const char *smask, int count) { static int makemask (const char *smask, int count) {
int mask = 0; int mask = 0;
if (c_strchr(smask, 'c')) mask |= LUA_MASKCALL; if (strchr(smask, 'c')) mask |= LUA_MASKCALL;
if (c_strchr(smask, 'r')) mask |= LUA_MASKRET; if (strchr(smask, 'r')) mask |= LUA_MASKRET;
if (c_strchr(smask, 'l')) mask |= LUA_MASKLINE; if (strchr(smask, 'l')) mask |= LUA_MASKLINE;
if (count > 0) mask |= LUA_MASKCOUNT; if (count > 0) mask |= LUA_MASKCOUNT;
return mask; return mask;
} }
...@@ -340,19 +340,19 @@ static int db_debug (lua_State *L) { ...@@ -340,19 +340,19 @@ static int db_debug (lua_State *L) {
for (;;) { for (;;) {
char buffer[LUA_MAXINPUT]; char buffer[LUA_MAXINPUT];
#if defined(LUA_USE_STDIO) #if defined(LUA_USE_STDIO)
c_fputs("lua_debug> ", c_stderr); fputs("lua_debug> ", c_stderr);
if (c_fgets(buffer, sizeof(buffer), c_stdin) == 0 || if (fgets(buffer, sizeof(buffer), c_stdin) == 0 ||
#else #else
// luai_writestringerror("%s", "lua_debug>"); // luai_writestringerror("%s", "lua_debug>");
if (lua_readline(L, buffer, "lua_debug>") == 0 || if (lua_readline(L, buffer, "lua_debug>") == 0 ||
#endif #endif
c_strcmp(buffer, "cont\n") == 0) strcmp(buffer, "cont\n") == 0)
return 0; return 0;
if (luaL_loadbuffer(L, buffer, c_strlen(buffer), "=(debug command)") || if (luaL_loadbuffer(L, buffer, strlen(buffer), "=(debug command)") ||
lua_pcall(L, 0, 0, 0)) { lua_pcall(L, 0, 0, 0)) {
#if defined(LUA_USE_STDIO) #if defined(LUA_USE_STDIO)
c_fputs(lua_tostring(L, -1), c_stderr); fputs(lua_tostring(L, -1), c_stderr);
c_fputs("\n", c_stderr); fputs("\n", c_stderr);
#else #else
luai_writestringerror("%s\n", lua_tostring(L, -1)); luai_writestringerror("%s\n", lua_tostring(L, -1));
#endif #endif
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STRING #include <string.h>
#include "lapi.h" #include "lapi.h"
#include "lcode.h" #include "lcode.h"
...@@ -253,7 +253,7 @@ static int stripdebug (lua_State *L, Proto *f, int level) { ...@@ -253,7 +253,7 @@ static int stripdebug (lua_State *L, Proto *f, int level) {
TString* dummy; TString* dummy;
switch (level) { switch (level) {
case 3: case 3:
sizepackedlineinfo = c_strlen(cast(char *, f->packedlineinfo))+1; sizepackedlineinfo = strlen(cast(char *, f->packedlineinfo))+1;
f->packedlineinfo = luaM_freearray(L, f->packedlineinfo, sizepackedlineinfo, unsigned char); f->packedlineinfo = luaM_freearray(L, f->packedlineinfo, sizepackedlineinfo, unsigned char);
len += sizepackedlineinfo; len += sizepackedlineinfo;
case 2: case 2:
...@@ -344,7 +344,7 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { ...@@ -344,7 +344,7 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) {
plight = fvalue(ci->func); plight = fvalue(ci->func);
} }
status = auxgetinfo(L, what, ar, f, plight, ci); status = auxgetinfo(L, what, ar, f, plight, ci);
if (c_strchr(what, 'f')) { if (strchr(what, 'f')) {
if (f != NULL) if (f != NULL)
setclvalue(L, L->top, f) setclvalue(L, L->top, f)
else if (plight != NULL) else if (plight != NULL)
...@@ -353,7 +353,7 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { ...@@ -353,7 +353,7 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) {
setnilvalue(L->top); setnilvalue(L->top);
incr_top(L); incr_top(L);
} }
if (c_strchr(what, 'L')) if (strchr(what, 'L'))
collectvalidlines(L, f); collectvalidlines(L, f);
lua_unlock(L); lua_unlock(L);
return status; return status;
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STRING #include <string.h>
#include "ldebug.h" #include "ldebug.h"
#include "ldo.h" #include "ldo.h"
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STRING #include <string.h>
#include "lobject.h" #include "lobject.h"
#include "lstate.h" #include "lstate.h"
...@@ -150,9 +150,9 @@ static void DumpNumber(lua_Number x, DumpState* D) ...@@ -150,9 +150,9 @@ static void DumpNumber(lua_Number x, DumpState* D)
if(D->target.is_arm_fpa) if(D->target.is_arm_fpa)
{ {
char *pnum=(char*)&y, temp[4]; char *pnum=(char*)&y, temp[4];
c_memcpy(temp,pnum,4); memcpy(temp,pnum,4);
c_memcpy(pnum,pnum+4,4); memcpy(pnum,pnum+4,4);
c_memcpy(pnum+4,temp,4); memcpy(pnum+4,temp,4);
} }
MaybeByteSwap((char*)&y,8,D); MaybeByteSwap((char*)&y,8,D);
DumpVar(y,D); DumpVar(y,D);
...@@ -171,7 +171,7 @@ static void DumpCode(const Proto *f, DumpState* D) ...@@ -171,7 +171,7 @@ static void DumpCode(const Proto *f, DumpState* D)
Align4(D); Align4(D);
for (i=0; i<f->sizecode; i++) for (i=0; i<f->sizecode; i++)
{ {
c_memcpy(buf,&f->code[i],sizeof(Instruction)); memcpy(buf,&f->code[i],sizeof(Instruction));
MaybeByteSwap(buf,sizeof(Instruction),D); MaybeByteSwap(buf,sizeof(Instruction),D);
DumpBlock(buf,sizeof(Instruction),D); DumpBlock(buf,sizeof(Instruction),D);
} }
...@@ -230,7 +230,7 @@ static void DumpDebug(const Proto* f, DumpState* D) ...@@ -230,7 +230,7 @@ static void DumpDebug(const Proto* f, DumpState* D)
int i,n; int i,n;
#ifdef LUA_OPTIMIZE_DEBUG #ifdef LUA_OPTIMIZE_DEBUG
n = (D->strip || f->packedlineinfo == NULL) ? 0: c_strlen(cast(char *,f->packedlineinfo))+1; n = (D->strip || f->packedlineinfo == NULL) ? 0: strlen(cast(char *,f->packedlineinfo))+1;
DumpInt(n,D); DumpInt(n,D);
Align4(D); Align4(D);
if (n) if (n)
...@@ -281,7 +281,7 @@ static void DumpHeader(DumpState* D) ...@@ -281,7 +281,7 @@ static void DumpHeader(DumpState* D)
char *h=buf; char *h=buf;
/* This code must be kept in sync wiht luaU_header */ /* This code must be kept in sync wiht luaU_header */
c_memcpy(h,LUA_SIGNATURE,sizeof(LUA_SIGNATURE)-1); memcpy(h,LUA_SIGNATURE,sizeof(LUA_SIGNATURE)-1);
h+=sizeof(LUA_SIGNATURE)-1; h+=sizeof(LUA_SIGNATURE)-1;
*h++=(char)LUAC_VERSION; *h++=(char)LUAC_VERSION;
*h++=(char)LUAC_FORMAT; *h++=(char)LUAC_FORMAT;
......
...@@ -17,10 +17,10 @@ ...@@ -17,10 +17,10 @@
#include "vfs.h" #include "vfs.h"
#include "uzlib.h" #include "uzlib.h"
#include "c_fcntl.h" #include <fcntl.h>
#include "c_stdio.h" #include <stdio.h>
#include "c_stdlib.h" #include <stdlib.h>
#include "c_string.h" #include <string.h>
/* /*
* Flash memory is a fixed memory addressable block that is serially allocated by the * Flash memory is a fixed memory addressable block that is serially allocated by the
...@@ -388,13 +388,13 @@ static void put_byte (uint8_t value) { ...@@ -388,13 +388,13 @@ static void put_byte (uint8_t value) {
} }
static uint8_t recall_byte (uint offset) { static uint8_t recall_byte (unsigned offset) {
if(offset > DICTIONARY_WINDOW || offset >= out->ndx) if(offset > DICTIONARY_WINDOW || offset >= out->ndx)
flash_error("invalid dictionary offset on inflate"); flash_error("invalid dictionary offset on inflate");
/* ndx starts at 1. Need relative to 0 */ /* ndx starts at 1. Need relative to 0 */
uint n = out->ndx - offset; unsigned n = out->ndx - offset;
uint pos = n % WRITE_BLOCKSIZE; unsigned pos = n % WRITE_BLOCKSIZE;
uint blockNo = out->ndx / WRITE_BLOCKSIZE - n / WRITE_BLOCKSIZE; unsigned blockNo = out->ndx / WRITE_BLOCKSIZE - n / WRITE_BLOCKSIZE;
return out->block[blockNo]->byte[pos]; return out->block[blockNo]->byte[pos];
} }
...@@ -429,7 +429,7 @@ int procFirstPass (void) { ...@@ -429,7 +429,7 @@ int procFirstPass (void) {
fh->flash_size > flashSize || fh->flash_size > flashSize ||
out->flagsLen != 1 + (out->flashLen/WORDSIZE - 1) / BITS_PER_WORD) out->flagsLen != 1 + (out->flashLen/WORDSIZE - 1) / BITS_PER_WORD)
flash_error("LFS length mismatch"); flash_error("LFS length mismatch");
out->flags = luaM_newvector(out->L, out->flagsLen, uint); out->flags = luaM_newvector(out->L, out->flagsLen, unsigned);
} }
/* update running CRC */ /* update running CRC */
...@@ -512,7 +512,7 @@ static int loadLFS (lua_State *L) { ...@@ -512,7 +512,7 @@ static int loadLFS (lua_State *L) {
in->len = vfs_size(in->fd); in->len = vfs_size(in->fd);
if (in->len <= 200 || /* size of an empty luac output */ if (in->len <= 200 || /* size of an empty luac output */
vfs_lseek(in->fd, in->len-4, VFS_SEEK_SET) != in->len-4 || vfs_lseek(in->fd, in->len-4, VFS_SEEK_SET) != in->len-4 ||
vfs_read(in->fd, &out->len, sizeof(uint)) != sizeof(uint)) vfs_read(in->fd, &out->len, sizeof(unsigned)) != sizeof(unsigned))
flash_error("read error on LFS image file"); flash_error("read error on LFS image file");
vfs_lseek(in->fd, 0, VFS_SEEK_SET); vfs_lseek(in->fd, 0, VFS_SEEK_SET);
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STRING #include <string.h>
#include "lfunc.h" #include "lfunc.h"
#include "lgc.h" #include "lgc.h"
...@@ -150,7 +150,7 @@ void luaF_freeproto (lua_State *L, Proto *f) { ...@@ -150,7 +150,7 @@ void luaF_freeproto (lua_State *L, Proto *f) {
luaM_freearray(L, f->code, f->sizecode, Instruction); luaM_freearray(L, f->code, f->sizecode, Instruction);
#ifdef LUA_OPTIMIZE_DEBUG #ifdef LUA_OPTIMIZE_DEBUG
if (f->packedlineinfo) { if (f->packedlineinfo) {
luaM_freearray(L, f->packedlineinfo, c_strlen(cast(char *, f->packedlineinfo))+1, unsigned char); luaM_freearray(L, f->packedlineinfo, strlen(cast(char *, f->packedlineinfo))+1, unsigned char);
} }
#else #else
luaM_freearray(L, f->lineinfo, f->sizelineinfo, int); luaM_freearray(L, f->lineinfo, f->sizelineinfo, int);
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STRING #include <string.h>
#include "ldebug.h" #include "ldebug.h"
#include "ldo.h" #include "ldo.h"
...@@ -173,8 +173,8 @@ static int traversetable (global_State *g, Table *h) { ...@@ -173,8 +173,8 @@ static int traversetable (global_State *g, Table *h) {
} }
if (mode && ttisstring(mode)) { /* is there a weak mode? */ if (mode && ttisstring(mode)) { /* is there a weak mode? */
weakkey = (c_strchr(svalue(mode), 'k') != NULL); weakkey = (strchr(svalue(mode), 'k') != NULL);
weakvalue = (c_strchr(svalue(mode), 'v') != NULL); weakvalue = (strchr(svalue(mode), 'v') != NULL);
if (weakkey || weakvalue) { /* is really weak? */ if (weakkey || weakvalue) { /* is really weak? */
h->marked &= ~(KEYWEAK | VALUEWEAK); /* clear bits */ h->marked &= ~(KEYWEAK | VALUEWEAK); /* clear bits */
h->marked |= cast_byte((weakkey << KEYWEAKBIT) | h->marked |= cast_byte((weakkey << KEYWEAKBIT) |
...@@ -333,7 +333,7 @@ static l_mem propagatemark (global_State *g) { ...@@ -333,7 +333,7 @@ static l_mem propagatemark (global_State *g) {
(proto_isreadonly(p) ? 0 : sizeof(Instruction) * p->sizecode + (proto_isreadonly(p) ? 0 : sizeof(Instruction) * p->sizecode +
#ifdef LUA_OPTIMIZE_DEBUG #ifdef LUA_OPTIMIZE_DEBUG
(p->packedlineinfo ? (p->packedlineinfo ?
c_strlen(cast(char *, p->packedlineinfo))+1 : strlen(cast(char *, p->packedlineinfo))+1 :
0)); 0));
#else #else
sizeof(int) * p->sizelineinfo); sizeof(int) * p->sizelineinfo);
......
...@@ -10,9 +10,9 @@ ...@@ -10,9 +10,9 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_CTYPE #include <ctype.h>
#include C_HEADER_LOCALE #include <locale.h>
#include C_HEADER_STRING #include <string.h>
#include "ldo.h" #include "ldo.h"
#include "llex.h" #include "llex.h"
...@@ -154,7 +154,7 @@ void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, TString *source) { ...@@ -154,7 +154,7 @@ void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, TString *source) {
static int check_next (LexState *ls, const char *set) { static int check_next (LexState *ls, const char *set) {
if (!c_strchr(set, ls->current)) if (!strchr(set, ls->current))
return 0; return 0;
save_and_next(ls); save_and_next(ls);
return 1; return 1;
...@@ -422,7 +422,7 @@ static int llex (LexState *ls, SemInfo *seminfo) { ...@@ -422,7 +422,7 @@ static int llex (LexState *ls, SemInfo *seminfo) {
/* look for reserved word */ /* look for reserved word */
save(ls, '\0'); save(ls, '\0');
for (i = 0; i < NUM_RESERVED; i++) for (i = 0; i < NUM_RESERVED; i++)
if (!c_strcmp(luaX_tokens[i], luaZ_buffer(ls->buff))) if (!strcmp(luaX_tokens[i], luaZ_buffer(ls->buff)))
return i + FIRST_RESERVED; return i + FIRST_RESERVED;
ts = luaX_newstring(ls, luaZ_buffer(ls->buff), ts = luaX_newstring(ls, luaZ_buffer(ls->buff),
luaZ_bufflen(ls->buff) - 1); luaZ_bufflen(ls->buff) - 1);
......
...@@ -8,8 +8,6 @@ ...@@ -8,8 +8,6 @@
#define llimits_h #define llimits_h
//#include "c_limits.h"
#include "lua.h" #include "lua.h"
typedef LUAI_UINT32 lu_int32; typedef LUAI_UINT32 lu_int32;
......
...@@ -10,8 +10,8 @@ ...@@ -10,8 +10,8 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDLIB #include <stdlib.h>
#include C_HEADER_MATH #include <math.h>
#include "lauxlib.h" #include "lauxlib.h"
#include "lualib.h" #include "lualib.h"
......
...@@ -8,12 +8,6 @@ ...@@ -8,12 +8,6 @@
#define lmem_h #define lmem_h
//#ifdef LUA_CROSS_COMPILER
//#include <stddef.h>
//#else
//#include "c_stddef.h"
//#endif
#include "llimits.h" #include "llimits.h"
#include "lua.h" #include "lua.h"
......
...@@ -14,9 +14,9 @@ ...@@ -14,9 +14,9 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDLIB #include <stdlib.h>
#include C_HEADER_STRING #include <string.h>
#include C_HEADER_FCNTL #include <fcntl.h>
#ifndef LUA_CROSS_COMPILER #ifndef LUA_CROSS_COMPILER
#include "vfs.h" #include "vfs.h"
...@@ -103,7 +103,7 @@ static void setprogdir (lua_State *L) { ...@@ -103,7 +103,7 @@ static void setprogdir (lua_State *L) {
char *lb; char *lb;
DWORD nsize = sizeof(buff)/sizeof(char); DWORD nsize = sizeof(buff)/sizeof(char);
DWORD n = GetModuleFileNameA(NULL, buff, nsize); DWORD n = GetModuleFileNameA(NULL, buff, nsize);
if (n == 0 || n == nsize || (lb = c_strrchr(buff, '\\')) == NULL) if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL)
luaL_error(L, "unable to get ModuleFileName"); luaL_error(L, "unable to get ModuleFileName");
else { else {
*lb = '\0'; *lb = '\0';
...@@ -333,9 +333,9 @@ static int ll_loadlib (lua_State *L) { ...@@ -333,9 +333,9 @@ static int ll_loadlib (lua_State *L) {
*/ */
#ifdef LUA_CROSS_COMPILER #ifdef LUA_CROSS_COMPILER
static int readable (const char *filename) { static int readable (const char *filename) {
FILE *f = c_fopen(filename, "r"); /* try to open file */ FILE *f = fopen(filename, "r"); /* try to open file */
if (f == NULL) return 0; /* open failed */ if (f == NULL) return 0; /* open failed */
c_fclose(f); fclose(f);
return 1; return 1;
} }
#else #else
...@@ -351,8 +351,8 @@ static const char * pushnexttemplate (lua_State *L, const char *path) { ...@@ -351,8 +351,8 @@ static const char * pushnexttemplate (lua_State *L, const char *path) {
const char *l; const char *l;
while (*path == *LUA_PATHSEP) path++; /* skip separators */ while (*path == *LUA_PATHSEP) path++; /* skip separators */
if (*path == '\0') return NULL; /* no more templates */ if (*path == '\0') return NULL; /* no more templates */
l = c_strchr(path, *LUA_PATHSEP); /* find next separator */ l = strchr(path, *LUA_PATHSEP); /* find next separator */
if (l == NULL) l = path + c_strlen(path); if (l == NULL) l = path + strlen(path);
lua_pushlstring(L, path, l - path); /* template */ lua_pushlstring(L, path, l - path); /* template */
return l; return l;
} }
...@@ -406,7 +406,7 @@ static int loader_Lua (lua_State *L) { ...@@ -406,7 +406,7 @@ static int loader_Lua (lua_State *L) {
static const char *mkfuncname (lua_State *L, const char *modname) { static const char *mkfuncname (lua_State *L, const char *modname) {
const char *funcname; const char *funcname;
const char *mark = c_strchr(modname, *LUA_IGMARK); const char *mark = strchr(modname, *LUA_IGMARK);
if (mark) modname = mark + 1; if (mark) modname = mark + 1;
funcname = luaL_gsub(L, modname, ".", LUA_OFSEP); funcname = luaL_gsub(L, modname, ".", LUA_OFSEP);
funcname = lua_pushfstring(L, POF"%s", funcname); funcname = lua_pushfstring(L, POF"%s", funcname);
...@@ -431,7 +431,7 @@ static int loader_Croot (lua_State *L) { ...@@ -431,7 +431,7 @@ static int loader_Croot (lua_State *L) {
const char *funcname; const char *funcname;
const char *filename; const char *filename;
const char *name = luaL_checkstring(L, 1); const char *name = luaL_checkstring(L, 1);
const char *p = c_strchr(name, '.'); const char *p = strchr(name, '.');
int stat; int stat;
if (p == NULL) return 0; /* is root */ if (p == NULL) return 0; /* is root */
lua_pushlstring(L, name, p - name); lua_pushlstring(L, name, p - name);
...@@ -559,7 +559,7 @@ static void modinit (lua_State *L, const char *modname) { ...@@ -559,7 +559,7 @@ static void modinit (lua_State *L, const char *modname) {
lua_setfield(L, -2, "_M"); /* module._M = module */ lua_setfield(L, -2, "_M"); /* module._M = module */
lua_pushstring(L, modname); lua_pushstring(L, modname);
lua_setfield(L, -2, "_NAME"); lua_setfield(L, -2, "_NAME");
dot = c_strrchr(modname, '.'); /* look for last dot in module name */ dot = strrchr(modname, '.'); /* look for last dot in module name */
if (dot == NULL) dot = modname; if (dot == NULL) dot = modname;
else dot++; else dot++;
/* set _PACKAGE as package name (full module name minus last part) */ /* set _PACKAGE as package name (full module name minus last part) */
......
...@@ -10,9 +10,9 @@ ...@@ -10,9 +10,9 @@
#define LUAC_CROSS_FILE #define LUAC_CROSS_FILE
#include "lua.h" #include "lua.h"
#include C_HEADER_STDIO #include <stdio.h>
#include C_HEADER_STRING #include <string.h>
#include C_HEADER_STDLIB #include <stdlib.h>
#include "ldo.h" #include "ldo.h"
#include "lmem.h" #include "lmem.h"
...@@ -116,7 +116,7 @@ int luaO_str2d (const char *s, lua_Number *result) { ...@@ -116,7 +116,7 @@ int luaO_str2d (const char *s, lua_Number *result) {
*result = cast_num(lres); *result = cast_num(lres);
} }
#else #else
*result = cast_num(c_strtoul(s, &endptr, 16)); *result = cast_num(strtoul(s, &endptr, 16));
#endif #endif
if (*endptr == '\0') return 1; /* most common case */ if (*endptr == '\0') return 1; /* most common case */
while (isspace(cast(unsigned char, *endptr))) endptr++; while (isspace(cast(unsigned char, *endptr))) endptr++;
...@@ -137,7 +137,7 @@ const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { ...@@ -137,7 +137,7 @@ const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) {
int n = 1; int n = 1;
pushstr(L, ""); pushstr(L, "");
for (;;) { for (;;) {
const char *e = c_strchr(fmt, '%'); const char *e = strchr(fmt, '%');
if (e == NULL) break; if (e == NULL) break;
setsvalue2s(L, L->top, luaS_newlstr(L, fmt, e-fmt)); setsvalue2s(L, L->top, luaS_newlstr(L, fmt, e-fmt));
incr_top(L); incr_top(L);
...@@ -167,7 +167,7 @@ const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { ...@@ -167,7 +167,7 @@ const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) {
} }
case 'p': { case 'p': {
char buff[4*sizeof(void *) + 8]; /* should be enough space for a `%p' */ char buff[4*sizeof(void *) + 8]; /* should be enough space for a `%p' */
c_sprintf(buff, "%p", va_arg(argp, void *)); sprintf(buff, "%p", va_arg(argp, void *));
pushstr(L, buff); pushstr(L, buff);
break; break;
} }
...@@ -206,7 +206,7 @@ const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) { ...@@ -206,7 +206,7 @@ const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) {
void luaO_chunkid (char *out, const char *source, size_t bufflen) { void luaO_chunkid (char *out, const char *source, size_t bufflen) {
if (*source == '=') { if (*source == '=') {
c_strncpy(out, source+1, bufflen); /* remove first char */ strncpy(out, source+1, bufflen); /* remove first char */
out[bufflen-1] = '\0'; /* ensures null termination */ out[bufflen-1] = '\0'; /* ensures null termination */
} }
else { /* out = "source", or "...source" */ else { /* out = "source", or "...source" */
...@@ -214,26 +214,26 @@ void luaO_chunkid (char *out, const char *source, size_t bufflen) { ...@@ -214,26 +214,26 @@ void luaO_chunkid (char *out, const char *source, size_t bufflen) {
size_t l; size_t l;
source++; /* skip the `@' */ source++; /* skip the `@' */
bufflen -= sizeof(" '...' "); bufflen -= sizeof(" '...' ");
l = c_strlen(source); l = strlen(source);
c_strcpy(out, ""); strcpy(out, "");
if (l > bufflen) { if (l > bufflen) {
source += (l-bufflen); /* get last part of file name */ source += (l-bufflen); /* get last part of file name */
c_strcat(out, "..."); strcat(out, "...");
} }
c_strcat(out, source); strcat(out, source);
} }
else { /* out = [string "string"] */ else { /* out = [string "string"] */
size_t len = c_strcspn(source, "\n\r"); /* stop at first newline */ size_t len = strcspn(source, "\n\r"); /* stop at first newline */
bufflen -= sizeof(" [string \"...\"] "); bufflen -= sizeof(" [string \"...\"] ");
if (len > bufflen) len = bufflen; if (len > bufflen) len = bufflen;
c_strcpy(out, "[string \""); strcpy(out, "[string \"");
if (source[len] != '\0') { /* must truncate? */ if (source[len] != '\0') { /* must truncate? */
c_strncat(out, source, len); strncat(out, source, len);
c_strcat(out, "..."); strcat(out, "...");
} }
else else
c_strcat(out, source); strcat(out, source);
c_strcat(out, "\"]"); strcat(out, "\"]");
} }
} }
} }
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment