From 7575536c805e379b009630947e72f636c006751f Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 4 Nov 2008 23:43:30 +0000 Subject: fixed bugs which happened. --- src/core/function.c | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'src/core/function.c') diff --git a/src/core/function.c b/src/core/function.c index 8d5dbf6..a102d7b 100644 --- a/src/core/function.c +++ b/src/core/function.c @@ -283,6 +283,7 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op, strcmp(token_get_val(p_token_next), token_get_val(p_token_store)) == 0); token_set_tt(p_token_store, TT_INTEGER); + break; case TT_ARRAY: ERROR("TT_ARRAY eq TT_ARRAY not yet implemented"); break; @@ -414,6 +415,31 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op, NO_DEFAULT; } break; + case TT_AND: + switch (tt_highest) { + case TT_INTEGER: + token_set_ival(p_token_store, + (int) token_get_ival(p_token_next) & + token_get_ival(p_token_store)); + break; + case TT_DOUBLE: + token_set_ival(p_token_store, + (int) token_get_dval(p_token_next) & + (int) token_get_dval(p_token_store)); + token_set_tt(p_token_store, TT_INTEGER); + break; + case TT_STRING: + token_set_ival(p_token_store, + atoi(token_get_val(p_token_next)) & + atoi(token_get_val(p_token_store))); + token_set_tt(p_token_store, TT_INTEGER); + break; + case TT_ARRAY: + ERROR("ARRAY bla yet implemented"); + break; + NO_DEFAULT; + } + break; case TT_OR: switch (tt_highest) { case TT_INTEGER: @@ -810,10 +836,10 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident, break; case TT_STRING: printf("%s", token_get_val(p_token)); + break; case TT_ARRAY: ERROR("ARRAY bla yet implemented"); break; - break; } } stackiterator_delete(p_iter); -- cgit v1.2.3