Mailing-List: contact cygwin-developers-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT cygwin DOT com Delivered-To: mailing list cygwin-developers AT cygwin DOT com Date: Sat, 28 Sep 2002 20:02:15 -0400 From: Christopher Faylor To: cygwin-developers AT cygwin DOT com Subject: Re: Many pthread failures in the test suite, one setgroup failure Message-ID: <20020929000215.GB10872@redhat.com> Reply-To: cygwin-developers AT cygwin DOT com Mail-Followup-To: cygwin-developers AT cygwin DOT com References: <20020925141653 DOT GA6134 AT redhat DOT com> <1033139976 DOT 22908 DOT 333 DOT camel AT lifelesswks> <163544913434 DOT 20020927192540 AT logos-m DOT ru> <1033140780 DOT 9593 DOT 0 DOT camel AT lifelesswks> <44642850720 DOT 20020928223759 AT logos-m DOT ru> <1033254454 DOT 4375 DOT 48 DOT camel AT lifelesswks> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1033254454.4375.48.camel@lifelesswks> User-Agent: Mutt/1.4i On Sun, Sep 29, 2002 at 09:07:34AM +1000, Robert Collins wrote: >On Sun, 2002-09-29 at 04:37, egor duda wrote: > >> I guess i know why it works for you. Hint: Try gcc 3.x to build >> cygwin1.dll. Me and Chris, are using it, obviously, while you're >> probably using 2.95, right? > >Yes, I've been holding off upgrading until gcc 3.x is the default for >cygwin, at which time I will migrate the setup sources to 3.x. > >> class verifyable_object contains no virtual functions, hence no >> pointer to VMT in it. This means that compiler assumes that magic >> member is placed at offset 0 from the beginning of class. > >Which is valid for verifyable_object but will *kill* any derived >classes. Yep. coding bug on my behalf. Can you or Chris try the test run >after changing the verifyable_object destructor to be virtual (thread.h, >line 163). Already did that. It brings the pthread test suite failures down to 1 for pthread-condvar6. assertion output is below. >What *may* be a regression in 3.2 is the apparent bug caused by the >introduction of a VMT in a derived class. However, as we already have a >destructor for verifyable_object, and in this instance it should be >virtual, we get to sidestep the bullet - for now. I was thinking that it made sense to make the destructor virtual anyway. But now, I'm worried about other parts of cygwin which are not exercised by the test suite. Maybe they will have problems, too. Isn't this actually a bug? cgf Assertion failed: (pthread_cond_timedwait(&cvthing.notbusy, &cvthing.lock, &abstime) == 0), file /cygnus/src/uberbaum/winsup/testsuite/winsup.api/pthread/condvar6.c, line 97 Assertion failed: (pthread_cond_timedwait(&cvthing.notbusy, &cvthing.lock, &abstime) == 0), file /cygnus/src/uberbaum/winsup/testsuite/winsup.api/pthread/condvar6.c, line 97