[kde-solaris] Template woes in kjs
Stefan Teleman
stefan.teleman at gmail.com
Thu Aug 16 23:25:35 CEST 2007
On Thursday 16 August 2007 17:22, Adriaan de Groot wrote:
> [ 6%] Building CXX object kjs/CMakeFiles/kjs.dir/date_object.o
>
> >> Assertion: (../lnk/bind.cc, line 268)
>
> while processing /mnt/KDE4/kdelibs/kjs/collector.h at line 44.
This looks like a compiler bug. No matter what the C++ problem is, the
compiler shouldn't assert or crash.
> The thing is, collector.h:44 is inside a comment. So I'm sure the
> compiler error message is kind of bogus. The problem comes from
> this line:
>
> static HashCountedSet<const char *>* rootObjectTypeCounts();
>
> change the template parameter to, say, int and everything is fine
> (regarding this error, at least). There is a lot of template magic
> going on in wtf/ (that's web template framework for you),
> HashFunctions.h *seems* to be the culprit in some way. I can't tell
> how, though. Template guru?
Did you try using a template/template partial specialization forward
declaration:
#if defined(__SUNPRO_CC)
template<typename T>
class HashCountedSet;
template<>
class HashCountedSet<const char*>;
#endif
before the method declaration.
(code written in email, not tested).
> [ As a second aside, I dare you to try running Qt4's designer under
> CDE to see what the window manager makes of it. ]
it looks "retro" -- 70's all the way. goes with bell-bottom pants,
wide-collar Hawaiian shirts and disco.
--Stefan
--
Stefan Teleman 'Nobody Expects the Spanish Inquisition'
KDE e.V. -Monty Python
stefan.teleman at gmail.com
More information about the kde-solaris
mailing list