fix and suppress some more -Wgnu-zero-variadic-macro-arguments

This commit is contained in:
wmayer
2019-11-15 23:53:09 +01:00
parent d0339c5674
commit 7758509bda
3 changed files with 95 additions and 53 deletions

View File

@@ -110,43 +110,41 @@ private:
Py::Object inst;
static std::vector<DocumentObserverPython*> _instances;
typedef boost::signals2::connection Connection;
//FIXME: ISO C++11 requires at least one argument for the "..." in a variadic macro
#define FC_PY_DOC_OBSERVER \
FC_PY_ELEMENT(CreatedDocument,_1) \
FC_PY_ELEMENT(DeletedDocument,_1) \
FC_PY_ELEMENT(RelabelDocument,_1) \
FC_PY_ELEMENT(ActivateDocument,_1) \
FC_PY_ELEMENT(UndoDocument,_1) \
FC_PY_ELEMENT(RedoDocument,_1) \
FC_PY_ELEMENT(BeforeChangeDocument,_1,_2) \
FC_PY_ELEMENT(ChangedDocument,_1,_2) \
FC_PY_ELEMENT(CreatedObject,_1) \
FC_PY_ELEMENT(DeletedObject,_1) \
FC_PY_ELEMENT(BeforeChangeObject,_1,_2) \
FC_PY_ELEMENT(ChangedObject,_1,_2) \
FC_PY_ELEMENT(RecomputedObject,_1) \
FC_PY_ELEMENT(BeforeRecomputeDocument,_1) \
FC_PY_ELEMENT(RecomputedDocument,_1) \
FC_PY_ELEMENT(OpenTransaction,_1,_2) \
FC_PY_ELEMENT(CommitTransaction,_1) \
FC_PY_ELEMENT(AbortTransaction,_1) \
FC_PY_ELEMENT(Undo) \
FC_PY_ELEMENT(Redo) \
FC_PY_ELEMENT(BeforeCloseTransaction,_1) \
FC_PY_ELEMENT(CloseTransaction,_1) \
FC_PY_ELEMENT(StartSaveDocument,_1,_2) \
FC_PY_ELEMENT(FinishSaveDocument,_1,_2) \
FC_PY_ELEMENT(AppendDynamicProperty,_1) \
FC_PY_ELEMENT(RemoveDynamicProperty,_1) \
FC_PY_ELEMENT(ChangePropertyEditor,_1,_2)
typedef struct {
boost::signals2::scoped_connection slot;
Py::Object py;
PyObject* ptr() {
return py.ptr();
}
} Connection;
#undef FC_PY_ELEMENT
#define FC_PY_ELEMENT(_name,...) \
Connection connect##_name;\
Py::Object py##_name;
FC_PY_DOC_OBSERVER
Connection pyCreatedDocument;
Connection pyDeletedDocument;
Connection pyRelabelDocument;
Connection pyActivateDocument;
Connection pyUndoDocument;
Connection pyRedoDocument;
Connection pyBeforeChangeDocument;
Connection pyChangedDocument;
Connection pyCreatedObject;
Connection pyDeletedObject;
Connection pyBeforeChangeObject;
Connection pyChangedObject;
Connection pyRecomputedObject;
Connection pyBeforeRecomputeDocument;
Connection pyRecomputedDocument;
Connection pyOpenTransaction;
Connection pyCommitTransaction;
Connection pyAbortTransaction;
Connection pyUndo;
Connection pyRedo;
Connection pyBeforeCloseTransaction;
Connection pyCloseTransaction;
Connection pyStartSaveDocument;
Connection pyFinishSaveDocument;
Connection pyAppendDynamicProperty;
Connection pyRemoveDynamicProperty;
Connection pyChangePropertyEditor;
};
} //namespace App