Hello: I am using GCC v2.96 on Red Hat 7.3. My C++ program ALWAYS seg faults when operator delete[] is called on a pointer, even though stepping through the code in the debugger reveals not only the address to be valid, but also it is the same address as that returned by operator new. This only happens when calling delete[] on arrays of primitive types besides char. An example of offending code is: unsigned long* v = new unsigned long[100]; /* the above succeeds, let's say */ /*snip*/ ... /*snap*/ delete[] v; /*<-- seg fault here; why?? */ v = NULL; Does this have anything to do with the compiler? Oddly enough, if I use malloc()/free(), malloc() seems to work fine, but free() blows up. Even if they are both given the same pointers. ?? Thanks for any help. -- Sincerely Yours, Brian Hart Department of Physics and Astronomy 4129 Frederick Reines Hall University of California, Irvine Irvine, CA 92612-3021 E-Mail: bchart@xxxxxxx Phone: (949) 824-6911 URL: http://www.ags.uci.edu/~bchart/