*** empty log message ***
This commit is contained in:
parent
083e4f4404
commit
87f38b76bc
@ -1,9 +1,9 @@
|
|||||||
SRCS = awk.c parse.c tree.c
|
SRCS = awk.c err.c tree.c tab.c map.c parse.c run.c sa.c val.c
|
||||||
OBJS = $(SRCS:.c=.obj)
|
OBJS = $(SRCS:.c=.obj)
|
||||||
OUT = xpawk.lib
|
OUT = xpawk.lib
|
||||||
|
|
||||||
CC = bcc32
|
CC = bcc32
|
||||||
CFLAGS = -O2 -WM -w -w-inl -w-sig -w-spa -w-hid -RT- -I../..
|
CFLAGS = -O2 -WM -w -w-inl -w-sig -w-spa -w-hid -RT- -I../.. -D__STAND_ALONE
|
||||||
|
|
||||||
all: $(OBJS)
|
all: $(OBJS)
|
||||||
tlib $(OUT) @&&!
|
tlib $(OUT) @&&!
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk.c,v 1.28 2006-03-07 15:55:14 bacon Exp $
|
* $Id: awk.c,v 1.29 2006-03-14 16:40:00 bacon Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <xp/awk/awk.h>
|
#include <xp/awk/awk.h>
|
||||||
@ -56,7 +56,8 @@ xp_awk_t* xp_awk_open (xp_awk_t* awk)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: initial map size...
|
// TODO: initial map size...
|
||||||
if (xp_awk_map_open(&awk->run.named, 256, xp_awk_freeval) == XP_NULL) {
|
if (xp_awk_map_open(&awk->run.named,
|
||||||
|
256, (void(*)(void*))xp_awk_freeval) == XP_NULL) {
|
||||||
xp_str_close (&awk->token.name);
|
xp_str_close (&awk->token.name);
|
||||||
xp_awk_map_close (&awk->tree.funcs);
|
xp_awk_map_close (&awk->tree.funcs);
|
||||||
xp_awk_tab_close (&awk->parse.globals);
|
xp_awk_tab_close (&awk->parse.globals);
|
||||||
@ -101,7 +102,6 @@ int xp_awk_close (xp_awk_t* awk)
|
|||||||
if (xp_awk_detsrc(awk) == -1) return -1;
|
if (xp_awk_detsrc(awk) == -1) return -1;
|
||||||
|
|
||||||
xp_awk_map_close (&awk->run.named);
|
xp_awk_map_close (&awk->run.named);
|
||||||
|
|
||||||
xp_awk_map_close (&awk->tree.funcs);
|
xp_awk_map_close (&awk->tree.funcs);
|
||||||
xp_awk_tab_close (&awk->parse.globals);
|
xp_awk_tab_close (&awk->parse.globals);
|
||||||
xp_awk_tab_close (&awk->parse.locals);
|
xp_awk_tab_close (&awk->parse.locals);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: run.c,v 1.10 2006-03-07 16:09:18 bacon Exp $
|
* $Id: run.c,v 1.11 2006-03-14 16:40:00 bacon Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <xp/awk/awk.h>
|
#include <xp/awk/awk.h>
|
||||||
@ -42,6 +42,7 @@ int xp_awk_run (xp_awk_t* awk)
|
|||||||
(xp_awk_nde_blk_t*)awk->tree.end) == -1) return -1;
|
(xp_awk_nde_blk_t*)awk->tree.end) == -1) return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
xp_printf (XP_TEXT("---------------------------\n"));
|
||||||
xp_awk_map_walk (&awk->run.named, __printval);
|
xp_awk_map_walk (&awk->run.named, __printval);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -65,7 +66,7 @@ static int __run_block (xp_awk_t* awk, xp_awk_nde_blk_t* nde)
|
|||||||
|
|
||||||
while (p != XP_NULL)
|
while (p != XP_NULL)
|
||||||
{
|
{
|
||||||
if (__run_statement(awk, p) == -1) return -1;
|
if (__run_statement(awk,p) == -1) return -1;
|
||||||
p = p->next;
|
p = p->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -81,7 +82,7 @@ static int __run_statement (xp_awk_t* awk, xp_awk_nde_t* nde)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case XP_AWK_NDE_BLK:
|
case XP_AWK_NDE_BLK:
|
||||||
if (__run_block(awk, (xp_awk_nde_blk_t*)nde) == -1) return -1;
|
if (__run_block(awk,(xp_awk_nde_blk_t*)nde) == -1) return -1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case XP_AWK_NDE_IF:
|
case XP_AWK_NDE_IF:
|
||||||
@ -274,7 +275,7 @@ static xp_awk_val_t* __eval_binary (xp_awk_t* awk, xp_awk_nde_exp_t* nde)
|
|||||||
right = __eval_expression (awk, nde->right);
|
right = __eval_expression (awk, nde->right);
|
||||||
if (right == XP_NULL)
|
if (right == XP_NULL)
|
||||||
{
|
{
|
||||||
xp_awk_freeval(left);
|
xp_awk_freeval (left);
|
||||||
return XP_NULL;
|
return XP_NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tree.c,v 1.23 2006-03-05 17:07:33 bacon Exp $
|
* $Id: tree.c,v 1.24 2006-03-14 16:40:00 bacon Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <xp/awk/awk.h>
|
#include <xp/awk/awk.h>
|
||||||
@ -68,6 +68,8 @@ static int __print_expression (xp_awk_nde_t* nde)
|
|||||||
case XP_AWK_NDE_INT:
|
case XP_AWK_NDE_INT:
|
||||||
#if defined(vax) || defined(__vax)
|
#if defined(vax) || defined(__vax)
|
||||||
xp_printf (XP_TEXT("%ld"), (long)((xp_awk_nde_int_t*)nde)->val);
|
xp_printf (XP_TEXT("%ld"), (long)((xp_awk_nde_int_t*)nde)->val);
|
||||||
|
#elif defined(_WIN32)
|
||||||
|
xp_printf (XP_TEXT("%I64d"), (__int64)((xp_awk_nde_int_t*)nde)->val);
|
||||||
#else
|
#else
|
||||||
xp_printf (XP_TEXT("%lld"), (long long)((xp_awk_nde_int_t*)nde)->val);
|
xp_printf (XP_TEXT("%lld"), (long long)((xp_awk_nde_int_t*)nde)->val);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: val.c,v 1.4 2006-03-07 16:09:18 bacon Exp $
|
* $Id: val.c,v 1.5 2006-03-14 16:40:00 bacon Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <xp/awk/awk.h>
|
#include <xp/awk/awk.h>
|
||||||
@ -98,8 +98,16 @@ void xp_awk_printval (xp_awk_val_t* val)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case XP_AWK_VAL_INT:
|
case XP_AWK_VAL_INT:
|
||||||
|
#if defined(vax) || defined(__vax)
|
||||||
|
xp_printf (XP_TEXT("%ld"),
|
||||||
|
(long)((xp_awk_val_int_t*)val)->val);
|
||||||
|
#elif defined(_WIN32)
|
||||||
|
xp_printf (XP_TEXT("%I64d"),
|
||||||
|
(__int64)((xp_awk_nde_int_t*)val)->val);
|
||||||
|
#else
|
||||||
xp_printf (XP_TEXT("%lld"),
|
xp_printf (XP_TEXT("%lld"),
|
||||||
(long long)((xp_awk_val_int_t*)val)->val);
|
(long long)((xp_awk_val_int_t*)val)->val);
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case XP_AWK_VAL_REAL:
|
case XP_AWK_VAL_REAL:
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
CC = bcc32
|
CC = bcc32
|
||||||
CFLAGS = -I..\..\..
|
CFLAGS = -I..\..\..
|
||||||
LDFLAGS = -L..\..\..\xp\bas -L..\..\..\xp\awk
|
LDFLAGS = -L..\..\..\xp\bas -L..\..\..\xp\awk
|
||||||
LIBS = import32.lib cw32mt.lib xpbas.lib xpawk.lib
|
LIBS = import32.lib cw32mt.lib xpbas.lib xpawk.lib
|
||||||
STARTUP = c0x32w.obj
|
STARTUP = c0x32w.obj
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ CFLAGS = -I../../.. -A -ansic -libcdll -D__STAND_ALONE
|
|||||||
#LIBS = -lxpawk -lxpbas
|
#LIBS = -lxpawk -lxpbas
|
||||||
#LDFLAGS = -subsystem console -dynamic -s
|
#LDFLAGS = -subsystem console -dynamic -s
|
||||||
LDFLAGS = -subsystem console -s
|
LDFLAGS = -subsystem console -s
|
||||||
LIBS = ..\..\..\xp\awk\xpawk.lib
|
LIBS = ../../../xp/awk/xpawk.lib
|
||||||
|
|
||||||
all: awk
|
all: awk
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user