From bcff42f74da6f374975998b3e39c39ea21723aab Mon Sep 17 00:00:00 2001 From: Tibor Bizjak Date: Sun, 16 Jul 2023 13:31:57 +0200 Subject: [PATCH] moved error handling to appropriate header files --- k&r/04-funcs-and-prog-struct/04-calc/04-calc.c | 4 ---- k&r/04-funcs-and-prog-struct/04-calc/04-glob-stack.h | 2 ++ k&r/04-funcs-and-prog-struct/04-calc/04-tokens.h | 8 ++++++++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/k&r/04-funcs-and-prog-struct/04-calc/04-calc.c b/k&r/04-funcs-and-prog-struct/04-calc/04-calc.c index 1929fa7..1472e8e 100644 --- a/k&r/04-funcs-and-prog-struct/04-calc/04-calc.c +++ b/k&r/04-funcs-and-prog-struct/04-calc/04-calc.c @@ -9,10 +9,6 @@ /* --------- ERROR MESSAGES */ #define printerr(format, ...) printf("error: " format "\n", ##__VA_ARGS__) -#define ZERODIV_ERR "zero divisor" -#define DOMAIN_ERR "operand not in domain [%d, %d]" -#define NEG_ERR "negative operand %g" -#define FULL_STACK_ERR "stack full, can't push %g" #define UNKNOWN_TOKEN_ERR "unknown token %s" #define VAR_NOT_SET_ERR "variable %c has no value" diff --git a/k&r/04-funcs-and-prog-struct/04-calc/04-glob-stack.h b/k&r/04-funcs-and-prog-struct/04-calc/04-glob-stack.h index 5cb6754..89a77fa 100644 --- a/k&r/04-funcs-and-prog-struct/04-calc/04-glob-stack.h +++ b/k&r/04-funcs-and-prog-struct/04-calc/04-glob-stack.h @@ -3,8 +3,10 @@ #define STACK_H #define printerr(format, ...) printf("error: " format "\n", ##__VA_ARGS__) +/* ERROR MESSAGES */ #define EMPTY_STACK_ERR "stack empty" #define SHORT_STACK_ERR "not enough elements on stack" +#define FULL_STACK_ERR "stack full, can't push %g" #ifndef MAX_STACK #define MAX_STACK 100 diff --git a/k&r/04-funcs-and-prog-struct/04-calc/04-tokens.h b/k&r/04-funcs-and-prog-struct/04-calc/04-tokens.h index 11cc0d0..8d1c76f 100644 --- a/k&r/04-funcs-and-prog-struct/04-calc/04-tokens.h +++ b/k&r/04-funcs-and-prog-struct/04-calc/04-tokens.h @@ -2,6 +2,13 @@ #define TOKENS_H #include +#define printerr(format, ...) printf("error: " format "\n", ##__VA_ARGS__) + +/* ERROR MESSAGES */ +#define ZERODIV_ERR "zero divisor" +#define DOMAIN_ERR "operand not in domain [%d, %d]" +#define NEG_ERR "negative operand %g" + /* --------- CALCULATOR FUNCTION TYPES */ /* the following macros allow us to call native c constructs * in a declarative style */ @@ -89,4 +96,5 @@ OPERATORS \ MATH_H_BINDINGS +#undef printerr #endif // TOKENS_H