cmTypeMacro: Add a class to eat the semicolon following the macro use.

Apply the same workaround to the cmCPackTypeMacro. Additionally
change that macro to not use 'class' as a macro parameter.
This commit is contained in:
Stephen Kelly committed 2014-04-03 21:53:13 +02:00
1 parent ff710539ab
commit 4bef02e7aa
2 files changed
+6 -4

No files matched your search

+4 -3
View File
@@ -22,9 +22,10 @@
// Forward declarations are insufficient since we use them in
// std::map data members below...
#define cmCPackTypeMacro(class, superclass) \
cmTypeMacro(class, superclass); \
static cmCPackGenerator* CreateGenerator() { return new class; }
#define cmCPackTypeMacro(klass, superclass) \
cmTypeMacro(klass, superclass); \
static cmCPackGenerator* CreateGenerator() { return new klass; } \
class cmCPackTypeMacro_UseTrailingSemicolon
#define cmCPackLogger(logType, msg) \
do { \
+2 -1
View File
@@ -378,7 +378,8 @@ static thisClass* SafeDownCast(cmObject *c) \
return static_cast<thisClass *>(c); \
} \
return 0;\
}
} \
class cmTypeMacro_UseTrailingSemicolon
inline bool cmHasLiteralPrefixImpl(const std::string &str1,
const char *str2,