[PyQt] Syntax error for QVector iterator typedef

Phil Thompson phil at riverbankcomputing.com
Sat Jul 19 22:54:35 BST 2014


On 19/07/2014 9:09 pm, Camden Mannett wrote:
> Hi all,
> 
> This tiny fragment triggers a SIP syntax error:
> 
> %Import QtCore/QtCoremod.sip
> class Sy_audioFrame
> {
>     %TypeHeaderCode
>     #include <global/Sy_audioFrame.h>
>     %End
> 
> public:
>     typedef QVector< float > Leg;
>     typedef QVector< Leg > Audio;
>     typedef QVector< Leg >::iterator iterator; // Error!
>     ...
> 
> The rather unhelpful error message is:
> 
> sip: .../Sy_audioFrame.sip:21: syntax error
> 
> Can anyone suggest why SIP doesn't like that particular typedef
> definition?  I've tried fully qualifying the template argument but it
> made no difference.

SIP only supports a sub-set of C++. That particular construct just isn't 
supported.

Phil


More information about the PyQt mailing list