In gcc 4.2+, the visibility of a class member has to be specified in the class
definition rather than the implementation -- lack of a visibilty statement
there results in an implicit visibility attribute.
klash specifies its visibility in the implementation, resulting in
klash_part.cpp:65: warning: 'KlashFactory::KlashFactory()': visibility
attribute ignored because it
klash_part.cpp:50: warning: conflicts with previous declaration here
klash_part.cpp:69: warning: 'virtual KlashFactory::~KlashFactory()':
visibility attribute ignored because it
klash_part.cpp:51: warning: conflicts with previous declaration here
The attached patch fixes it. (Tested only with 4.2, but since older gccs
accepted both places, this shouldn't break anything).
Regards,
bero
--
Get your own Linux distribution -- http://www.yold.org/
--- gnash/plugin/klash/klash_part.cpp.ark 2007-02-01 14:51:23.000000000 +0100
+++ gnash/plugin/klash/klash_part.cpp 2007-02-01 14:52:08.000000000 +0100
@@ -47,9 +47,9 @@
class KlashFactory : public KParts::Factory {
public:
- KlashFactory ();
- virtual ~KlashFactory ();
- virtual KParts::Part *createPartObject
+ KDE_NO_CDTOR_EXPORT KlashFactory ();
+ KDE_NO_CDTOR_EXPORT virtual ~KlashFactory ();
+ KDE_NO_CDTOR_EXPORT virtual KParts::Part *createPartObject
(QWidget *wparent, const char *wname,
QObject *parent, const char *name,
const char *className, const QStringList &args);
@@ -62,15 +62,15 @@
KInstance *KlashFactory::s_instance = 0;
-KDE_NO_CDTOR_EXPORT KlashFactory::KlashFactory () {
+KlashFactory::KlashFactory () {
s_instance = new KInstance ("klash");
}
-KDE_NO_CDTOR_EXPORT KlashFactory::~KlashFactory () {
+KlashFactory::~KlashFactory () {
delete s_instance;
}
-KDE_NO_EXPORT KParts::Part *KlashFactory::createPartObject
+KParts::Part *KlashFactory::createPartObject
(QWidget *wparent, const char *wname,
QObject *parent, const char * name,
const char * cls, const QStringList & args) {
_______________________________________________
Gnash mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnash