Dear Inkscape developers,
I'm trying to compile Inkscape-0.46 on OpenSolaris-200805 with the SunStudio tools. Unfortunately the process is not very smooth. After fixing some errors reported by the compiler, I'm stuck with the following one:
"document-subset.cpp", line 234: Error: Overloading ambiguity between "Inkscape::Util::ForwardPointerIterator<SPObject, SPObject::ParentIteratorStrategy>::operator SPObject*() const" and "Inkscape::Util::ForwardPointerIterator<const SPObject, SPObject::ParentIteratorStrategy>::operator const SPObject*() const". 1 Error(s) detected. make[2]: *** [document-subset.o] Error 1 make[2]: Leaving directory `/usr/pack/inkscape-0.46-fb/src/inkscape-0.46/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/pack/inkscape-0.46-fb/src/inkscape-0.46' make: *** [all] Error 2
Unfortunately I'm not a C++ expert, nor familiar with the Inkscape code. I would be very grateful if someone could give me a hint on how I could fix this compiler time ambiguity.
Hereafter I report the code which generates the error.
void DocumentSubset::Relations::addOne(SPObject *obj) { g_return_if_fail( obj != NULL ); g_return_if_fail( get(obj) == NULL );
Record &record=_doAdd(obj);
/* find the nearest ancestor in the subset */ Record *parent_record=NULL; for ( SPObject::ParentIterator parent_iter=obj->parent ; !parent_record && parent_iter ; ++parent_iter ) ...
The actual error is generated at the logical AND (&&) operator in the for looping condition (last line).
Thank you for your help. Fede
participants (1)
-
Federico Beffa