1 /* Debug --- run time debug level management
2 Copyright (C) 1995, 1996 Christian von Roques
3 All rights reserved. */
18 (d_) (int flag, unsigned level)
20 return d_ (flag, level);
27 return d_level (flag);
32 (d_set_level) (int flag, unsigned level)
34 return d_set_level (flag, level);
45 * Set debug flags according to the following syntax:
46 * number ["-" number] ["." number]
47 * 1st number is number of first flag to set.
48 * 2nd number is number of last flag to set. [defaults to 1st number]
49 * 3rd number is level to set the flags to. [defaults to 1]
52 (d_parse) (const char *s)
55 long first, last, level;
58 first = strtol(s, &end, 10);
59 last = (s != end) ? first : nflags-1;
64 last = strtol(s, &end, 10);
65 if (end == s) last = nflags-1; /* 3- ==> 3..nflags-1 */
71 level = strtol(s, &end, 10);
72 /* . with no number gives level 0 */
78 if (last>=nflags) last = nflags-1;
80 while (first<=last) d_vec[first++] = level;
90 d_vec = xmalloc (sizeof (unsigned char) * n);
91 memset(d_vec, 0, sizeof (unsigned char) * n);