[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    Re: kdelibs/dcop/dcopidl2cpp
From:       Malte Starostik <malte () kde ! org>
Date:       2002-07-27 14:34:10
[Download RAW message or body]


Am Samstag, 27. Juli 2002 14:05 schrieb Lubos Lunak:
> kdelibs/dcop/dcopidl2cpp stub.cpp,1.8,1.9 stubimpl.cpp,1.18,1.19
> Author: lunakl
> 
> 
> Modified Files:
>          stub.cpp stubimpl.cpp
> Log Message:
> Handle correctly the case, when the base class is not DCOPObject (like,
> when I'm lazy, use my KUniqueApplication based app class and just add
> DCOP methods to it). Which means:
> - #include the necessary .h file for the base stub
> - in the constructor, always explicitly call DCOPStub constructor and none
> else, because there's virtual inheritance used, apparently because of the
> very unlikely case people will multiply inherit DCOP interfaces
> (see your favourite C++ book for virtual base classes constructors calling)
> 
> Also, there's no need for the stub methods to be virtual. And I guess I > 
could
> add the necessary stubs implementations (like for KUniqueApplication) to > 
kdelibs.
> *Sigh*, I wish I wasn't so lazy, I wouldn't have to do all this

+
+            // needed for inherited stubs
+	    str << "protected:" << endl;
+            str << "    " << className << "() {};" << endl;
Breaks in kdelibs/kio/kio because of the implicitly called DCOPStub ctor:

n file included from ../../../../kdelibs/kio/kio/job.cpp:63:
kdirnotify_stub.h: In constructor `KDirNotify_stub::KDirNotify_stub()':
kdirnotify_stub.h:27: no matching function for call to `DCOPStub::DCOPStub()'
../../../../kdelibs/dcop/dcopstub.h:38: candidates are:
   DCOPStub::DCOPStub(const DCOPStub&)
../../../../kdelibs/dcop/dcopstub.h:49:
   DCOPStub::DCOPStub(DCOPClient*, const QCString&, const QCString&)
../../../../kdelibs/dcop/dcopstub.h:43:
   DCOPStub::DCOPStub(const QCString&, const QCString&)
make[1]: *** [job.lo] Error 1

Please fix this, I'm not sure which ctor you intended to call and why this 
protected default ctor is neccessary at all.

Thanks,
-Malte
-- 
"Corporations cross borders all the time in search of people to exploit for 
profit and no one stops them. They call this process Globalisation. On the 
other hand, the victims of corporate domination are told they cannot cross 
borders in search of better lives."
SchNEWS issue 310

[Attachment #3 (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic