Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@sourceware.cygnus.com Delivered-To: mailing list cygwin@sourceware.cygnus.com Message-Id: <199911151929.NAA06072@mercury.xraylith.wisc.edu> To: JSONCRAIG@aol.com cc: cygwin@sourceware.cygnus.com Subject: Re: GCC 2.95.2 + C++ + -pg = ? In-Reply-To: Your message of "Wed, 10 Nov 1999 21:53:37 EST." <0.67fd80e4.255b89b1@aol.com> Date: Mon, 15 Nov 1999 13:29:54 -0600 From: Mumit Khan JSONCRAIG@aol.com writes: > I just downloaded and unpacked the GCC-2.95.2 Mingw32-crtdll release. I > tried to compile a simple program: > > #include > using namespace std; > int main() > { > cout << "Test" << endl; > return 0; > } > > c++ -o test.exe test.cpp > works like a charm. But then, I decided to try out the profiling: > C++ -o test.exe -pg test.cpp > during linking: > > > linking:C:\GCC-29~1.2\BIN\..\lib\gcc-lib\i386-mingw32\2.95.2\libstdc++.a(io > stream.o)(.text$__ > ls__7ostreamPFR7ostream_R7ostream+0x0): multiple definition of > `ostream::operator<<(ostream &(*)(ostream &))' > > &))'C:\WINDOWS\TEMP\ccriT9fb.o(.text$__ls__7ostreamPFR7ostream_R7ostream+0x0 > ):test.cpp: first defined here It's a bug in binutils, not gcc. This is due to two bugs: 1 a small bug in the assembler that resets the section flags after switching back 2 a more complex bug in BFD (Binary File Descriptor library that forms the backend of the assembler, linker, etc). I don't have a solution yet. If I fix (1), the final executable is unloadable due to backend bugs. The bug is the following: let's say you're in the middle of a "linkonce" section (as is common for C++ template instantiations and inline functions), and then you switch to .data or .text to put some other data (eg., jump table), and switch back to the linkonce section. Can't fix (1) without fixing (2) first. I don't know enough about the PE-COFF implementation to know what's going on. I'll file a bug report with binutils folks with the testcases. Thanks for pointing out this problem. Regards, Mumit -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com