| www.delorie.com/archives/browse.cgi | search |
| Mailing-List: | contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm |
| List-Subscribe: | <mailto:cygwin-developers-subscribe AT sourceware DOT cygnus DOT com> |
| List-Archive: | <http://sourceware.cygnus.com/ml/cygwin-developers/> |
| List-Post: | <mailto:cygwin-developers AT sourceware DOT cygnus DOT com> |
| List-Help: | <mailto:cygwin-developers-help AT sourceware DOT cygnus DOT com>, <http://sourceware.cygnus.com/ml/#faqs> |
| Sender: | cygwin-developers-owner AT sourceware DOT cygnus DOT com |
| Delivered-To: | mailing list cygwin-developers AT sourceware DOT cygnus DOT com |
| X-Authentication-Warning: | hp2.xraylith.wisc.edu: khan owned process doing -bs |
| Date: | Thu, 18 May 2000 16:16:14 -0500 (CDT) |
| From: | Mumit Khan <khan AT NanoTech DOT Wisc DOT EDU> |
| To: | Kazuhiro Fujieda <fujieda AT jaist DOT ac DOT jp> |
| cc: | cygwin-developers AT sourceware DOT cygnus DOT com |
| Subject: | Re: Can't build the latest snapshot with gcc-2.95.2-1 |
| In-Reply-To: | <s1sln17hcid.fsf@jaist.ac.jp> |
| Message-ID: | <Pine.HPP.3.96.1000518160133.20231G-100000@hp2.xraylith.wisc.edu> |
| MIME-Version: | 1.0 |
On 19 May 2000, Kazuhiro Fujieda wrote:
> I can still observe the same problem. "mount.cc" didn't take
> part in the problem. The problem is that any application can't
> be compiled with the latest snapshot because of the unresolved
> reference in "libcygwin.a".
Same here.
> According to the explanation by Mumit, the problem is triggered
> by the sigthread::init(). This inlined method introduces the
> reference to the destructor into all source codes which include
> "sigproc.h". The reference only in "libccrt0.o" can't be
> resolved and causes the problem.
I'm trying to understand who is responsible at this point, and I
am leaning towards GCC as the culprit (however, I'm not sure at
this point). Here's a watered down version that shows where the
problem is:
struct muto
{
~muto ();
};
struct foobar
{
void init () {
static muto __foobar; // <<<< THIS IS WHAT DOES IT!
}
};
$ i686-pc-cygwin-gcc -g -O2 -fno-exceptions -fno-rtti -c bug.cc
$ i686-pc-cygwin-nm --dem bug.o | grep muto
U muto::~muto(void)
Argh.
The only solution I see now is to move the sigthread::init method to
an implementation file as an out-of-line definition instead.
Regards,
Mumit
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |