Date: Mon, 22 Jan 1996 09:22:03 -0800 From: John Polstra <jdp@polstra.com> To: jmz@cabri.obs-besancon.fr Cc: freebsd-current@freebsd.org Subject: Re: c++ and malloc Message-ID: <199601221722.JAA15652@austin.polstra.com> In-Reply-To: <9601210225.AA20119@cabri.obs-besancon.fr>
next in thread | previous in thread | raw e-mail | index | archive | help
In article <9601210225.AA20119@cabri.obs-besancon.fr> you write: > On a current system, c++ programs generate a lot of warnings. Here is > a simple example: > $ cat a.cc > #include <fstream.h> > ofstream x; main () {} > $ c++ a.cc > $ a.out > Malloc warning: free(): already free chunk. > Malloc warning: free(): already free chunk. > Malloc warning: free(): already free chunk. This might possibly be caused by a library problem that I caused with a change I made to /usr/share/mk/bsd.lib.mk. Check that file, and see whether you have revision 1.28. That is the bad version. If you have it, you should get the newest version (1.29), or revert to the preceding version (1.27), or just apply this patch: ------------------------------------------------------------------------------- Index: src/share/mk/bsd.lib.mk diff -c src/share/mk/bsd.lib.mk:1.28 src/share/mk/bsd.lib.mk:1.29 *** src/share/mk/bsd.lib.mk:1.28 Tue Jan 16 16:03:08 1996 --- src/share/mk/bsd.lib.mk Sun Jan 21 09:26:25 1996 *************** *** 1,5 **** # from: @(#)bsd.lib.mk 5.26 (Berkeley) 5/2/91 ! # $Id: bsd.lib.mk,v 1.28 1996/01/17 00:03:08 jdp Exp $ # .if exists(${.CURDIR}/../Makefile.inc) --- 1,5 ---- # from: @(#)bsd.lib.mk 5.26 (Berkeley) 5/2/91 ! # $Id: bsd.lib.mk,v 1.29 1996/01/21 17:26:25 jdp Exp $ # .if exists(${.CURDIR}/../Makefile.inc) *************** *** 187,193 **** .endif .if !defined(NOPIC) ! .if !make(clean) && !make(cleandir) SOBJS+= ${DESTDIR}/usr/lib/c++rt0.o .endif --- 187,193 ---- .endif .if !defined(NOPIC) ! .if defined(CPLUSPLUSLIB) && !make(clean) && !make(cleandir) SOBJS+= ${DESTDIR}/usr/lib/c++rt0.o .endif ------------------------------------------------------------------------------- Then, rebuild all of your shared libraries. You don't have to recompile them; just redo the final "ld" steps that build the libraries. I don't know whether this is the cause of your problem or not; but it might be. -- John -- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Self-knowledge is always bad news." -- John Barth
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601221722.JAA15652>