| /* vi:set ts=8 sts=8 sw=8: |
| * |
| * VIM - Vi IMproved by Bram Moolenaar |
| * Visual Workshop integration by Gordon Prieur |
| * |
| * Do ":help uganda" in Vim to read copying and usage conditions. |
| * Do ":help credits" in Vim to see a list of people who contributed. |
| */ |
| |
| |
| #ifndef WSDEBUG_H |
| #define WSDEBUG_H |
| |
| #ifdef WSDEBUG |
| |
| #ifndef ASSERT |
| #define ASSERT(c) \ |
| if (!(c)) { \ |
| fprintf(stderr, "Assertion failed: line %d, file %s\n", \ |
| __LINE__, __FILE__); \ |
| fflush(stderr); \ |
| abort(); \ |
| } |
| #endif |
| |
| #define WS_TRACE 0x00000001 |
| #define WS_TRACE_VERBOSE 0x00000002 |
| #define WS_TRACE_COLONCMD 0x00000004 |
| #define WS_DEBUG_ALL 0xffffffff |
| |
| #define WSDLEVEL(flags) (ws_debug != NULL && (ws_dlevel & (flags))) |
| |
| #ifdef USE_WDDUMP |
| #include "wdump.h" |
| #endif |
| |
| #define WSDEBUG_TRACE 1 |
| //#define WSDEBUG_SENSE 2 |
| |
| typedef enum { |
| WT_ENV = 1, /* look for env var if set */ |
| WT_WAIT, /* look for ~/.gvimwait if set */ |
| WT_STOP /* look for ~/.gvimstop if set */ |
| } WtWait; |
| |
| |
| void wsdebug(char *, ...); |
| void wstrace(char *, ...); |
| |
| |
| extern FILE *ws_debug; |
| extern u_int ws_dlevel; /* ws_debug verbosity level */ |
| |
| # else /* not WSDEBUG */ |
| |
| #ifndef ASSERT |
| # define ASSERT(c) |
| #endif |
| |
| /* |
| * The following 2 stubs are needed because a macro cannot be used because of |
| * the variable number of arguments. |
| */ |
| |
| void |
| wsdebug( |
| char *fmt, |
| ...) |
| { |
| } |
| |
| |
| void |
| wstrace( |
| char *fmt, |
| ...) |
| { |
| } |
| |
| #endif /* WSDEBUG */ |
| #endif /* WSDEBUG_H */ |