pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: x11/qt4-libs fails to build on NetBSD sparc64
On Wed, Jun 11, 2008 at 11:52:27PM +0100, raymond.meyer%rambler.ru@localhost
wrote:
> template <typename T>
> QVector<T> &QVector<T>::operator=(const QVector<T> &v)
> {
> typename QVector::Data *x = v.d;
> x->ref.ref();
> x = qAtomicSetPtr(&d, x);
> if (!x->ref.deref())
> free(x);
> if (!d->sharable)
> detach_helper();
> return *this;
> }
>
> I'm not sure how the line 'if (!d->sharable)' can cause 'Bus error'. Any
> ideas? Where does symbol 'd' come from? It's not declared as variable or
> anything?
It is a member in the QVector<T> class, as you can see in the v.d access
in the *x declaration. Check the stacktrace, this kind of problem typically
happens (a) after memory corruption of the vector, or (b) after a bogus cast
(i.e. *this is not realy a QVector<T>).
Martin
Home |
Main Index |
Thread Index |
Old Index