[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pykde
Subject:    Re: [PyQt] SIP and multiple inheritance ambiguity
From:       Phil Thompson <phil () riverbankcomputing ! com>
Date:       2016-06-10 13:55:35
Message-ID: D4008A09-75E2-49B9-A9A4-149FAE5CA0B8 () riverbankcomputing ! com
[Download RAW message or body]

On 8 Jun 2016, at 4:25 am, Scott Talbert <swt@techie.net> wrote:
> 
> On Mon, 6 Jun 2016, Scott Talbert wrote:
> 
> > > Hi,
> > > I'm trying to wrap a set of classes that have a diamond multiple inheritance \
> > > hierarchy (A inherits from B and C; B and C inherit from D). When SIP generates \
> > > the cast_A function, it won't compile under GCC 6.1.1 due to an ambiguous base \
> > >                 error:
> > > error: 'D' is an ambiguous base of 'A'
> > > return static_cast<D *>(sipCpp);
> > > Any ideas on how to work around this, other than hand editing the cast_X \
> > > function?
> > 
> > Actually, I was wrong about this being related to a change in GCC.  It turns out \
> > this is related to a SIP change in 4.18: \
> > https://www.riverbankcomputing.com/hg/sip/rev/14bfbaf7431a 
> > I'm thinking SIP could possibly check the list of target types and if there are \
> > duplicates, it could omit those from the cast function?
> 
> Simple patch attached.

Applied.

Thanks,
Phil
_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/pyqt


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic