------- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-08 
14:53 -------
Invalid as no compiler knows what branch to take when taking the cast:
 TestBaseClass_C *self = (TestBaseClass_C *)ptObj;

Since ptObj is void*, it is just a normal cast and not a cast which takes a 
branch of multiple inheritance.

Cast when calling pthread_create makes the testcase work:
 if ((res = pthread_create(
   &thread2_Handle,
   __null,
   TestBaseClass_C::StartThread2,
   (TestBaseClass_C *)this)) != 0 )


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18881

Reply via email to