This is the mail archive of the cygwin-developers@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Many pthread failures in the test suite, one setgroup failure


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]