1 /* Debug --- run time debug level management
2 Copyright (C) 1995, 1996 Christian von Roques
3 All rights reserved. */
16 (d_) (int flag, unsigned level)
18 return d_ (flag, level);
25 return d_level (flag);
30 (d_set_level) (int flag, unsigned level)
32 return d_set_level (flag, level);
43 * Set debug flags according to the following syntax:
44 * number ["-" number] ["." number]
45 * 1st number is number of first flag to set.
46 * 2nd number is number of last flag to set. [defaults to 1st number]
47 * 3rd number is level to set the flags to. [defaults to 1]
50 (d_parse) (const char *s)
53 long first, last, level;
56 first = strtol(s, &end, 10);
57 last = (s != end) ? first : nflags-1;
62 last = strtol(s, &end, 10);
63 if (end == s) last = nflags-1; /* 3- ==> 3..nflags-1 */
69 level = strtol(s, &end, 10);
70 /* . with no number gives level 0 */
76 if (last>=nflags) last = nflags-1;
78 while (first<=last) d_vec[first++] = level;
88 d_vec = xmalloc (sizeof (unsigned char) * n);
89 memset(d_vec, 0, sizeof (unsigned char) * n);