--- stack/stack.c 2002/01/07 23:09:01 1.1.1.1 +++ stack/stack.c 2002/01/07 23:31:34 1.3 @@ -4,6 +4,7 @@ #include /* NULL */ #include +/* dlopen, dlsym, dlerror */ #include #define HASHTBLSIZE 65536 @@ -147,12 +148,18 @@ if(stack_head->next != NULL) print_st(stack_head->next, counter+1); - if(stack_head->type==value) + switch(stack_head->type){ + case value: printf("%ld: %d\n", counter, (int)stack_head->content.val); - else if(stack_head->type==string) + break; + case string: printf("%ld: \"%s\"\n", counter, (char*)stack_head->content.ptr); - else + break; + case ref: + case func: printf("%ld: %p\n", counter, stack_head->content.ptr); + break; + } } extern void printstack(stackitem** stack_head) @@ -250,3 +257,7 @@ return EXIT_SUCCESS; } + +/* Local Variables: */ +/* compile-command:"make CFLAGS=\"-Wall -g -rdynamic -ldl\" stack" */ +/* End: */