fnf@unisoft.UUCP (Fred Fish) (01/01/85)
There were a couple of minor bugs in the "dbug" package I recently posted to net.sources. Specifically, (1) There was some problems with _db_file_ being used as a global in dbug.c as the current output stream, and in dbug.h as a place on the stack to stash a pointer to the previous file name. The output stream usage is now "_db_fp_". PS, was typo in dbug.h where "_db_file" should have been "_db_file_". (2) The output stream "_db_fp_" is now now used by dbug.c, rather than "stack -> out_file". This makes DBUG_FILE macro work correctly. (3) There was a minor problem with the Makefile not knowing about .c~ to .c conversion. (4) The lint library file llib-ldbug.c had the functions named "_dbug_xxxxx_" rather than "_db_xxxxx_". Contextual diffs follow: ==================== CUT HERE ====================== diff -c dbug/Makefile newdbug/Makefile *** dbug/Makefile Mon Dec 31 16:39:52 1984 --- newdbug/Makefile Mon Dec 31 16:29:44 1984 *************** *** 5,11 # # SCCS ID # ! # @(#)Makefile 1.4 12/31/84 # # DESCRIPTION # --- 5,11 ----- # # SCCS ID # ! # @(#)Makefile 1.5 12/31/84 # # DESCRIPTION # *************** *** 40,46 LINT1 = /usr/lib/lint1 RANLIB = ranlib ! .SUFFIXES: .r~ .r .r~.r: $(GET) $(GFLAGS) -p $< >$*.r --- 40,49 ----- LINT1 = /usr/lib/lint1 RANLIB = ranlib ! .SUFFIXES: .r .r~ .c .c~ ! ! .c~.c: ! $(GET) $(GFLAGS) -p $< >$*.c .r~.r: $(GET) $(GFLAGS) -p $< >$*.r diff -c dbug/dbug.c newdbug/dbug.c *** dbug/dbug.c Mon Dec 31 16:39:56 1984 --- newdbug/dbug.c Mon Dec 31 16:29:48 1984 *************** *** 24,30 * * SCCS * ! * @(#)dbug.c 1.2 12/31/84 * * DESCRIPTION * --- 24,30 ----- * * SCCS * ! * @(#)dbug.c 1.3 12/31/84 * * DESCRIPTION * *************** *** 101,107 * be accessed via the macro package facilities. */ ! EXPORT FILE *_db_file_ = stderr; /* Output stream, default stderr */ EXPORT char *_db_process_ = "dbug"; /* Pointer to process name; argv[0] */ EXPORT int _db_on_ = FALSE; /* TRUE if debugging currently on */ --- 101,107 ----- * be accessed via the macro package facilities. */ ! EXPORT FILE *_db_fp_ = stderr; /* Output stream, default stderr */ EXPORT char *_db_process_ = "dbug"; /* Pointer to process name; argv[0] */ EXPORT int _db_on_ = FALSE; /* TRUE if debugging currently on */ *************** *** 354,359 discard = stack; if (discard != NULL && discard -> next_state != NULL) { stack = discard -> next_state; if (discard -> keywords != NULL) { FreeList (discard -> keywords); } --- 354,360 ----- discard = stack; if (discard != NULL && discard -> next_state != NULL) { stack = discard -> next_state; + _db_fp_ = stack -> out_file; if (discard -> keywords != NULL) { FreeList (discard -> keywords); } *************** *** 425,432 if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); ! fprintf (stack -> out_file, ">%s\n", func); ! fflush (stack -> out_file); } } --- 426,433 ----- if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); ! fprintf (_db_fp_, ">%s\n", func); ! fflush (_db_fp_); } } *************** *** 463,470 _db_push_ (""); } if (stack -> level != *_slevel_ && (TRACING || DEBUGGING)) { ! fprintf (stack -> out_file, MSG1, _db_process_, func); ! fflush (stack -> out_file); } else if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); --- 464,471 ----- _db_push_ (""); } if (stack -> level != *_slevel_ && (TRACING || DEBUGGING)) { ! fprintf (_db_fp_, MSG1, _db_process_, func); ! fflush (_db_fp_); } else if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); *************** *** 468,475 } else if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); ! fprintf (stack -> out_file, "<%s\n", func); ! fflush (stack -> out_file); } stack -> level = *_slevel_ - INDENT; func = *_sfunc_; --- 469,476 ----- } else if (DoTrace ()) { DoPrefix (_line_); Indent (stack -> level); ! fprintf (_db_fp_, "<%s\n", func); ! fflush (_db_fp_); } stack -> level = *_slevel_ - INDENT; func = *_sfunc_; *************** *** 526,532 if (TRACING) { Indent (stack -> level + INDENT); } else { ! fprintf (stack -> out_file, "%s: ", func); } fprintf (stack -> out_file, "%s: ", keyword); fprintf (stack -> out_file, format, a0, a1, a2, a3, a4, a5, a6, --- 527,533 ----- if (TRACING) { Indent (stack -> level + INDENT); } else { ! fprintf (_db_fp_, "%s: ", func); } fprintf (_db_fp_, "%s: ", keyword); fprintf (_db_fp_, format, a0, a1, a2, a3, a4, a5, a6,a7, a8, *************** *** 528,538 } else { fprintf (stack -> out_file, "%s: ", func); } ! fprintf (stack -> out_file, "%s: ", keyword); ! fprintf (stack -> out_file, format, a0, a1, a2, a3, a4, a5, a6, ! a7, a8, a9, a10, a11); ! fprintf (stack -> out_file, "\n"); ! fflush (stack -> out_file); } } --- 529,539 ----- } else { fprintf (_db_fp_, "%s: ", func); } ! fprintf (_db_fp_, "%s: ", keyword); ! fprintf (_db_fp_, format, a0, a1, a2, a3, a4, a5, a6,a7, a8, ! a9, a10, a11); ! fprintf (_db_fp_, "\n"); ! fflush (_db_fp_); } } *************** *** 792,799 } } buffer[count] = EOS; ! fprintf (stack -> out_file, buffer); ! fflush (stack -> out_file); } --- 793,800 ----- } } buffer[count] = EOS; ! fprintf (_db_fp_, buffer); ! fflush (_db_fp_); } *************** *** 885,891 int _line_; { if (stack -> flags & PROCESS_ON) { ! fprintf (stack -> out_file, "%s: ", _db_process_); } if (stack -> flags & FILE_ON) { fprintf (stack -> out_file, "%14s: ", file); --- 886,892 ----- int _line_; { if (stack -> flags & PROCESS_ON) { ! fprintf (_db_fp_, "%s: ", _db_process_); } if (stack -> flags & FILE_ON) { fprintf (_db_fp_, "%14s: ", file); *************** *** 888,894 fprintf (stack -> out_file, "%s: ", _db_process_); } if (stack -> flags & FILE_ON) { ! fprintf (stack -> out_file, "%14s: ", file); } if (stack -> flags & LINE_ON) { fprintf (stack -> out_file, "%5d: ", _line_); --- 889,895 ----- fprintf (_db_fp_, "%s: ", _db_process_); } if (stack -> flags & FILE_ON) { ! fprintf (_db_fp_, "%14s: ", file); } if (stack -> flags & LINE_ON) { fprintf (_db_fp_, "%5d: ", _line_); *************** *** 891,897 fprintf (stack -> out_file, "%14s: ", file); } if (stack -> flags & LINE_ON) { ! fprintf (stack -> out_file, "%5d: ", _line_); } if (stack -> flags & DEPTH_ON) { fprintf (stack -> out_file, "%4d: ", stack -> level / INDENT); --- 892,898 ----- fprintf (_db_fp_, "%14s: ", file); } if (stack -> flags & LINE_ON) { ! fprintf (_db_fp_, "%5d: ", _line_); } if (stack -> flags & DEPTH_ON) { fprintf (_db_fp_, "%4d: ", stack -> level / INDENT); *************** *** 894,900 fprintf (stack -> out_file, "%5d: ", _line_); } if (stack -> flags & DEPTH_ON) { ! fprintf (stack -> out_file, "%4d: ", stack -> level / INDENT); } fflush (stack -> out_file); } --- 895,901 ----- fprintf (_db_fp_, "%5d: ", _line_); } if (stack -> flags & DEPTH_ON) { ! fprintf (_db_fp_, "%4d: ", stack -> level / INDENT); } fflush (_db_fp_); } *************** *** 896,902 if (stack -> flags & DEPTH_ON) { fprintf (stack -> out_file, "%4d: ", stack -> level / INDENT); } ! fflush (stack -> out_file); } --- 897,903 ----- if (stack -> flags & DEPTH_ON) { fprintf (_db_fp_, "%4d: ", stack -> level / INDENT); } ! fflush (_db_fp_); } *************** *** 924,931 if (name != NULL) { if (strcmp (name, "-") == 0) { ! _db_file_ = stdout; ! stack -> out_file = stdout; } else { fp = fopen (name, "a"); if (fp == NULL) { --- 925,932 ----- if (name != NULL) { if (strcmp (name, "-") == 0) { ! _db_fp_ = stdout; ! stack -> out_file = _db_fp_; } else { fp = fopen (name, "a"); if (fp == NULL) { *************** *** 929,935 } else { fp = fopen (name, "a"); if (fp == NULL) { ! fprintf (stack -> out_file, MSG2, _db_process_, name); perror (""); fflush (stack -> out_file); } else { --- 930,936 ----- } else { fp = fopen (name, "a"); if (fp == NULL) { ! fprintf (_db_fp_, MSG2, _db_process_, name); perror (""); fflush (_db_fp_); } else { *************** *** 931,937 if (fp == NULL) { fprintf (stack -> out_file, MSG2, _db_process_, name); perror (""); ! fflush (stack -> out_file); } else { _db_file_ = fp; stack -> out_file = fp; --- 932,938 ----- if (fp == NULL) { fprintf (_db_fp_, MSG2, _db_process_, name); perror (""); ! fflush (_db_fp_); } else { _db_fp_ = fp; stack -> out_file = _db_fp_; *************** *** 933,940 perror (""); fflush (stack -> out_file); } else { ! _db_file_ = fp; ! stack -> out_file = fp; } } } --- 934,941 ----- perror (""); fflush (_db_fp_); } else { ! _db_fp_ = fp; ! stack -> out_file = _db_fp_; } } } *************** *** 965,971 if (fclose (fp) == 0) { fprintf (stderr, MSG3, _db_process_); perror (""); ! fflush (stack -> out_file); } } } --- 966,972 ----- if (fclose (fp) == 0) { fprintf (stderr, MSG3, _db_process_); perror (""); ! fflush (_db_fp_); } } } diff -c dbug/dbug.h newdbug/dbug.h *** dbug/dbug.h Mon Dec 31 16:39:58 1984 --- newdbug/dbug.h Mon Dec 31 16:29:49 1984 *************** *** 28,34 * * SCCS ID * ! * @(#)dbug.h 1.2 12/31/84 * * DESCRIPTION * --- 28,34 ----- * * SCCS ID * ! * @(#)dbug.h 1.3 12/31/84 * * DESCRIPTION * *************** *** 67,73 #ifndef DBUG_OFF extern int _db_on_; /* TRUE if debug currently enabled */ ! extern FILE *_db_file_; /* Current debug output stream */ extern char *_db_process_; /* Name of current process */ extern int _db_keyword_ (); /* Accept/reject keyword */ extern void _db_push_ (); /* Push state, set up new state */ --- 67,73 ----- #ifndef DBUG_OFF extern int _db_on_; /* TRUE if debug currently enabled */ ! extern FILE *_db_fp_; /* Current debug output stream */ extern char *_db_process_; /* Name of current process */ extern int _db_keyword_ (); /* Accept/reject keyword */ extern void _db_push_ (); /* Push state, set up new state */ *************** *** 108,114 # define DBUG_FILE (stderr) # else # define DBUG_ENTER(a) \ ! auto char *_db_func_, *_db_file; \ int _db_level_; \ _db_enter_ (a,__FILE__,__LINE__,&_db_func_,&_db_file_,&_db_level_) # define DBUG_LEAVE \ --- 108,114 ----- # define DBUG_FILE (stderr) # else # define DBUG_ENTER(a) \ ! auto char *_db_func_, *_db_file_; \ int _db_level_; \ _db_enter_ (a,__FILE__,__LINE__,&_db_func_,&_db_file_,&_db_level_) # define DBUG_LEAVE \ *************** *** 129,133 # define DBUG_PUSH(a1) _db_push_ (a1) # define DBUG_POP() _db_pop_ () # define DBUG_PROCESS(a1) (_db_process_ = a1) ! # define DBUG_FILE (_db_file_) # endif --- 129,133 ----- # define DBUG_PUSH(a1) _db_push_ (a1) # define DBUG_POP() _db_pop_ () # define DBUG_PROCESS(a1) (_db_process_ = a1) ! # define DBUG_FILE (_db_fp_) # endif diff -c dbug/llib-ldbug.c newdbug/llib-ldbug.c *** dbug/llib-ldbug.c Mon Dec 31 16:40:05 1984 --- newdbug/llib-ldbug.c Mon Dec 31 16:28:52 1984 *************** *** 24,30 * * SCCS ID * ! * @(#)llib-ldbug.c 1.2 12/31/84 * * DESCRIPTION * --- 24,30 ----- * * SCCS ID * ! * @(#)llib-ldbug.c 1.3 12/31/84 * * DESCRIPTION * *************** *** 41,49 #define VOID void #define FALSE 0 ! FILE *_dbug_file = stderr; ! char *_dbug_who = "dbug"; ! int _dbug_on = FALSE; VOID _dbug_push_ (control) char *control; --- 41,49 ----- #define VOID void #define FALSE 0 ! int _db_on = FALSE; ! FILE *_db_fp_ = stderr; ! char *_db_process_ = "dbug"; VOID _db_push_ (control) char *control; *************** *** 45,51 char *_dbug_who = "dbug"; int _dbug_on = FALSE; ! VOID _dbug_push_ (control) char *control; { } --- 45,51 ----- FILE *_db_fp_ = stderr; char *_db_process_ = "dbug"; ! VOID _db_push_ (control) char *control; { } *************** *** 50,56 { } ! VOID _dbug_pop () { } --- 50,56 ----- { } ! VOID _db_pop_ () { } *************** *** 54,60 { } ! VOID _dbug_enter_ (_func_, _file_, _line_, _sfunc_, _sfile_, _slevel_) char *_func_; char *_file_; int _line_; --- 54,60 ----- { } ! VOID _db_enter_ (_func_, _file_, _line_, _sfunc_, _sfile_, _slevel_) char *_func_; char *_file_; int _line_; *************** *** 64,70 { } ! VOID _dbug_return_ (_line_, _sfunc_, _sfile_, _slevel_) int _line_; char **_sfunc_; char **_sfile_; --- 64,70 ----- { } ! VOID _db_return_ (_line_, _sfunc_, _sfile_, _slevel_) int _line_; char **_sfunc_; char **_sfile_; *************** *** 73,79 } /*VARARGS3*/ ! VOID _dbug_printf_ (_line_, keyword, format, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) int _line_; char *keyword, *format; --- 73,79 ----- } /*VARARGS3*/ ! VOID _db_printf_ (_line_, keyword, format, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) int _line_; char *keyword, *format; *************** *** 81,87 { } ! int _dbug_keyword_ (keyword) char *keyword; { return (0); --- 81,87 ----- { } ! int _db_keyword_ (keyword) char *keyword; { return (0);