diff options
author | Eric Blake <ebb9@byu.net> | 2008-08-18 07:22:44 -0600 |
---|---|---|
committer | Eric Blake <ebb9@byu.net> | 2008-08-22 19:25:36 -0600 |
commit | 8eb70fbb1969717d7cfefea93ee9f117fd3933cd (patch) | |
tree | c3272cb7242f5dd5c47c720915a1a7c6d6f3e40c /modules | |
parent | 67b3df0525590a61db71bab023d11cded89a024e (diff) | |
download | m4-8eb70fbb1969717d7cfefea93ee9f117fd3933cd.tar.gz |
Improve --debugmode behavior.
* m4/m4module.h (m4_debug_decode): Simplify interface.
* m4/debug.c (m4_debug_decode): Remove parameter, and handle
setting the new value.
* modules/gnu.c (debugmode): Adjust caller.
* src/freeze.c (reload_frozen_state): Likewise.
* src/main.c (main): Likewise.
(usage): Fix default for --debug.
* doc/m4.texinfo (Debugging options): Add an example.
Signed-off-by: Eric Blake <ebb9@byu.net>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/gnu.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/modules/gnu.c b/modules/gnu.c index 75e53634..2e960305 100644 --- a/modules/gnu.c +++ b/modules/gnu.c @@ -599,20 +599,11 @@ M4BUILTIN_HANDLER (debuglen) **/ M4BUILTIN_HANDLER (debugmode) { - int debug_level = m4_get_debug_level_opt (context); - int new_debug_level; - if (argc == 1) m4_set_debug_level_opt (context, 0); - else - { - new_debug_level = m4_debug_decode (context, debug_level, M4ARG (1)); - if (new_debug_level < 0) - m4_error (context, 0, 0, m4_arg_info (argv), - _("bad debug flags: `%s'"), M4ARG (1)); - else - m4_set_debug_level_opt (context, new_debug_level); - } + else if (m4_debug_decode (context, M4ARG (1)) < 0) + m4_error (context, 0, 0, m4_arg_info (argv), + _("bad debug flags: `%s'"), M4ARG (1)); } |