diff options
Diffstat (limited to 'src/wsdebug.h')
-rw-r--r-- | src/wsdebug.h | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/src/wsdebug.h b/src/wsdebug.h new file mode 100644 index 000000000..03da5697c --- /dev/null +++ b/src/wsdebug.h @@ -0,0 +1,81 @@ +/* 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 */ |