7
|
1 /* vi:set ts=8 sts=8 sw=8:
|
|
2 *
|
|
3 * VIM - Vi IMproved by Bram Moolenaar
|
|
4 * Visual Workshop integration by Gordon Prieur
|
|
5 *
|
|
6 * Do ":help uganda" in Vim to read copying and usage conditions.
|
|
7 * Do ":help credits" in Vim to see a list of people who contributed.
|
|
8 */
|
|
9
|
|
10
|
|
11 #ifndef NBDEBUG_H
|
|
12 #define NBDEBUG_H
|
|
13
|
|
14 #ifdef NBDEBUG
|
|
15
|
|
16 #ifndef ASSERT
|
|
17 #define ASSERT(c) \
|
|
18 if (!(c)) { \
|
|
19 fprintf(stderr, "Assertion failed: line %d, file %s\n", \
|
|
20 __LINE__, __FILE__); \
|
|
21 fflush(stderr); \
|
|
22 abort(); \
|
|
23 }
|
|
24 #endif
|
|
25
|
|
26 #define nbdebug(a) nbdbg##a
|
|
27
|
|
28 #define NB_TRACE 0x00000001
|
|
29 #define NB_TRACE_VERBOSE 0x00000002
|
|
30 #define NB_TRACE_COLONCMD 0x00000004
|
33
|
31 #define NB_PRINT 0x00000008
|
7
|
32 #define NB_DEBUG_ALL 0xffffffff
|
|
33
|
|
34 #define NBDLEVEL(flags) (nb_debug != NULL && (nb_dlevel & (flags)))
|
|
35
|
|
36 #define NBDEBUG_TRACE 1
|
|
37
|
|
38 typedef enum {
|
|
39 WT_ENV = 1, /* look for env var if set */
|
|
40 WT_WAIT, /* look for ~/.gvimwait if set */
|
|
41 WT_STOP /* look for ~/.gvimstop if set */
|
|
42 } WtWait;
|
|
43
|
|
44
|
|
45 void nbdbg(char *, ...);
|
33
|
46 void nbprt(char *, ...);
|
7
|
47 void nbtrace(char *, ...);
|
|
48
|
|
49 void nbdebug_wait __ARGS((u_int wait_flags, char *wait_var, u_int wait_secs));
|
|
50 void nbdebug_log_init __ARGS((char *log_var, char *level_var));
|
|
51
|
|
52 extern FILE *nb_debug;
|
|
53 extern u_int nb_dlevel; /* nb_debug verbosity level */
|
|
54
|
|
55 # else /* not NBDEBUG */
|
|
56
|
|
57 #ifndef ASSERT
|
|
58 # define ASSERT(c)
|
|
59 #endif
|
|
60
|
|
61 /*
|
33
|
62 * The following 3 stubs are needed because a macro cannot be used because of
|
7
|
63 * the variable number of arguments.
|
|
64 */
|
|
65
|
|
66 void
|
|
67 nbdbg(
|
|
68 char *fmt,
|
|
69 ...)
|
|
70 {
|
|
71 }
|
|
72
|
33
|
73 void
|
|
74 nbprt(
|
|
75 char *fmt,
|
|
76 ...)
|
|
77 {
|
|
78 }
|
7
|
79
|
|
80 void
|
|
81 nbtrace(
|
|
82 char *fmt,
|
|
83 ...)
|
|
84 {
|
|
85 }
|
|
86
|
|
87 #endif /* NBDEBUG */
|
|
88 #endif /* NBDEBUG_H */
|