As a bonus:
The memory leak in the marshall_QString is occurring on a signal/slot
connected like this:
connect(o1, SIGNAL('sig(QString &)'), o2, SLOT('slt(QString &)') )
The leak goes away when I change both of those to "const QString &".
Changing them to just "QString" and the leak seems to persist.