2 debug.cc -- implement debugging routines
4 source file of the GNU LilyPond music typesetter
6 (c) 1996,98 Han-Wen Nienhuys <hanwen@cs.uu.nl>
13 // #include <std/new.h>
19 #include "flower-debug.hh"
32 nulldev = new ofstream ("/dev/null");
33 monitor = new Dstream (&cout,".dstreamrc");
45 want to do a stacktrace .
56 cerr << _ ("Floating point exception") << endl;
65 // libg++ 2.8.0 doesn't have set_new_handler
66 // set_new_handler (&mynewhandler);
68 set_flower_debug (*monitor, check_debug);
70 signal (SIGFPE, float_handler);
73 bool check_debug=false;
76 bool check_malloc_b = false;
78 // #define MEMORY_PARANOID
80 #ifdef MEMORY_PARANOID
85 frobnify (void *p, size_t s)
97 operator new (size_t size)
100 result = malloc (size);
102 frobnify (result, size);
106 void *to_frob; int frob_size;
109 set_frobnify (void * p, size_t sz)
116 operator delete (void *p)
122 frobnify (p, frob_size);
129 #endif // MEMORY_PARANOID
135 set_flower_debug (*monitor, check_debug);
136 #ifdef MEMORY_PARANOID
139 warning (_ ("can't set mem-checking") + "!");