ftp.nice.ch/pub/next/connectivity/news/NewsBase.3.02.s.tar.gz#/NewsBase302.source/NNTP/common.subproj/errdebug.h

This is errdebug.h in view mode; [Download] [Up]

#ifdef DEBUG

#import <stdio.h>
extern int 	ck_level;

#define STRDBG(string) STRNDBG(string, sizeof(string))

#ifdef __OBJC__

#import <appkit/Application.h>

int	ck_dbg(int, id, SEL);
#define DBG(flag,dbgfunc) \
	{if(ck_dbg(flag,self,_cmd)) {\
	    fprintf(stderr,"DBG%d: \"%s\" %s (%d)\n",flag,\
	    (char *)[self name],(char *)sel_getName(_cmd),(int)_cmd);\
	    fprintf(stderr,"DBG%d: ",flag);dbgfunc;\
	    fprintf(stderr,"\n");\
	}}

#define STRNDBG(string, len) \
	{if(strlen(string) + 1 > len) {\
	    fprintf(stderr,"DBG: \"%s\" %s (%d) string overflow\n",\
	    (char *)[self name],(char *)sel_getName(_cmd),(int)_cmd);\
	    [NXApp terminate:self];\
	}}

#else __OBJC__

#define DBG(flag,dbgfunc) \
	{if(flag<=ck_level) {\
            fprintf(stderr,"DBG%d: file:%s line:%d\n",flag,\
	    __FILE__, __LINE__);\
	    fprintf(stderr,"DBG%d: ",flag);dbgfunc;\
	    fprintf(stderr,"\n");\
	}}
	    
#define STRNDBG(string, len) \
	{if(strlen(string) + 1 > len) {\
            fprintf(stderr,"DBG: file:%s line:%d string overflow\n",\
	    __FILE__, __LINE__);\
	    exit(-1);\
	}}

#endif __OBJ__

#else DEBUG

#define DBG(x,x)	
#define STRNDBG(x,x)	
#define STRDBG(x)	

#endif DEBUG

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.