summaryrefslogtreecommitdiff
path: root/src/mongo
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo')
-rw-r--r--src/mongo/client/redef_macros.h17
-rw-r--r--src/mongo/dbtests/macrotests.cpp14
2 files changed, 30 insertions, 1 deletions
diff --git a/src/mongo/client/redef_macros.h b/src/mongo/client/redef_macros.h
index 550d1b672c3..ceef2168d05 100644
--- a/src/mongo/client/redef_macros.h
+++ b/src/mongo/client/redef_macros.h
@@ -24,46 +24,63 @@
// util/allocator.h
#pragma push_macro("malloc")
+#undef malloc
#define malloc MONGO_malloc
#pragma push_macro("realloc")
+#undef realloc
#define realloc MONGO_realloc
// util/assert_util.h
#pragma push_macro("verify")
+#undef verify
#define verify MONGO_verify
#pragma push_macro("dassert")
+#undef dassert
#define dassert MONGO_dassert
#pragma push_macro("wassert")
+#undef wassert
#define wassert MONGO_wassert
#pragma push_macro("massert")
+#undef massert
#define massert MONGO_massert
#pragma push_macro("uassert")
+#undef uassert
#define uassert MONGO_uassert
#pragma push_macro("DESTRUCTOR_GUARD")
+#undef DESTRUCTOR_GUARD
#define DESTRUCTOR_GUARD MONGO_DESTRUCTOR_GUARD
// util/goodies.h
#pragma push_macro("PRINT")
+#undef PRINT
#define PRINT MONGO_PRINT
#pragma push_macro("PRINTFL")
+#undef PRINTFL
#define PRINTFL MONGO_PRINTFL
// util/debug_util.h
#pragma push_macro("DEV")
+#undef DEV
#define DEV MONGO_DEV
#pragma push_macro("DEBUGGING")
+#undef DEBUGGING
#define DEBUGGING MONGO_DEBUGGING
#pragma push_macro("SOMETIMES")
+#undef SOMETIMES
#define SOMETIMES MONGO_SOMETIMES
#pragma push_macro("OCCASIONALLY")
+#undef OCCASIONALLY
#define OCCASIONALLY MONGO_OCCASIONALLY
#pragma push_macro("RARELY")
+#undef RARELY
#define RARELY MONGO_RARELY
#pragma push_macro("ONCE")
+#undef ONCE
#define ONCE MONGO_ONCE
// util/log.h
#pragma push_macro("LOG")
+#undef LOG
#define LOG MONGO_LOG
diff --git a/src/mongo/dbtests/macrotests.cpp b/src/mongo/dbtests/macrotests.cpp
index 901de923300..9fedcdd6a37 100644
--- a/src/mongo/dbtests/macrotests.cpp
+++ b/src/mongo/dbtests/macrotests.cpp
@@ -16,10 +16,22 @@
#undef MONGO_EXPOSE_MACROS
+#define malloc 42
+
+#include "mongo/client/redef_macros.h"
+#include "mongo/client/undef_macros.h"
+
+#if malloc == 42
+#else
+# error malloc macro molested
+#endif
+
+#undef malloc
+
#include "mongo/client/dbclient.h"
#ifdef malloc
-# error malloc defined 0
+# error malloc macro defined
#endif
#ifdef verify