grammar FTBTS (trunk) [patch]

From: Dmitry Smirnov <onlyjob_at_member.fsf.org>
Date: Tue Jun 05 2012 - 07:55:23 CEST

Dear abiword team,

Since 2nd of May when I build 'trunk' version of abiword it FTBFS on
'grammar' plugin:

#############
AbiGrammar.cpp: In member function 'virtual bool
AbiGrammar::notify(AV_View*, AV_ChangeMask, void*)':
AbiGrammar.cpp:106:18: warning: variable 'pText' set but not used
[-Wunused-but-set-variable]
AbiGrammar.cpp: In function 'int abi_plugin_register(XAP_ModuleInfo*)':
AbiGrammar.cpp:159:38: error: cannot allocate an object of abstract
type 'AbiGrammar'
AbiGrammar.cpp:65:7: note: because the following virtual functions
are pure within 'AbiGrammar':
In file included from ../../../src/af/xap/xp/xap_App.h:39:0,
                 from AbiGrammar.cpp:34:
../../../src/af/xap/xp/xav_Listener.h:110:15: note: virtual bool
AV_ListenerExtra::notifyWithArg(AV_View*, AV_ChangeMask, void*)
make[5] *** [AbiGrammar.lo] Error 1
#############

The attached patch fixes it in the following manner:

#############
--- a/plugins/grammar/xp/AbiGrammar.cpp
+++ b/plugins/grammar/xp/AbiGrammar.cpp
@@ -92,7 +92,7 @@
                  return false;
                }

-virtual bool notify(AV_View * pAView, const AV_ChangeMask mask, void
* pPrivateData)
+virtual bool notifyWithArg(AV_View * pAView, const AV_ChangeMask
mask, void * pPrivateData)
                {
#############

I'm not sure if this is a best way to address the problem.
Alternatively the following patch may be used to revert the change
introduced around 1st of May:

#############
--- a/src/af/xap/xp/xap_App.cpp
+++ b/src/af/xap/xp/xap_App.cpp
@@ -490,7 +490,7 @@
                else
                {
                  AV_ListenerExtra * pExtra =
static_cast<AV_ListenerExtra *>(pListener);
- pExtra->notifyWithArg(pView,hint,pPrivateData);
+ pExtra->notify(pView,hint,pPrivateData);
                }
        }

--- a/src/af/xap/xp/xav_Listener.h
+++ b/src/af/xap/xp/xav_Listener.h
@@ -107,7 +107,7 @@
 class ABI_EXPORT AV_ListenerExtra : public AV_Listener
 {
 public:
- virtual bool notifyWithArg(AV_View * pView, const
AV_ChangeMask mask, void * pPrivateData =NULL) = 0;
+ virtual bool notify(AV_View * pView, const
AV_ChangeMask mask, void * pPrivateData =NULL) = 0;
        virtual AV_ListenerType getType(void) = 0;
 };
#############

Please advise.

Thank you.

Regards,
Dmitry.

Received on Tue Jun 5 07:56:11 2012

This archive was generated by hypermail 2.1.8 : Tue Jun 05 2012 - 07:56:12 CEST