summaryrefslogtreecommitdiff
path: root/ACE/examples/APG/Logging/Wrap_Macros.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/examples/APG/Logging/Wrap_Macros.cpp')
-rw-r--r--ACE/examples/APG/Logging/Wrap_Macros.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/ACE/examples/APG/Logging/Wrap_Macros.cpp b/ACE/examples/APG/Logging/Wrap_Macros.cpp
new file mode 100644
index 00000000000..9e88d3e11e0
--- /dev/null
+++ b/ACE/examples/APG/Logging/Wrap_Macros.cpp
@@ -0,0 +1,38 @@
+// $Id$
+
+#include "Trace.h"
+
+#if defined (__GNUC__) && (__GNUC__ >= 3 || __GNUC_MINOR__ > 95) && \
+ (!defined (VXWORKS) || !(__GNUC__ == 2 && __GNUC_MINOR__ == 96))
+// The macros in Trace.h only work on g++ 2.96 and later.
+// But not with VxWorks g++ 2.96.
+
+// Listing 1 code/ch03
+void foo (void);
+
+int ACE_TMAIN (int, ACE_TCHAR *[])
+{
+ ACE_TRACE ("main");
+ MY_DEBUG (ACE_TEXT ("Hi Mom\n"));
+ foo ();
+ MY_DEBUG (ACE_TEXT ("Goodnight\n"));
+ return 0;
+}
+
+void foo (void)
+{
+ ACE_TRACE ("foo");
+ MY_DEBUG (ACE_TEXT ("Howdy Pardner\n"));
+}
+// Listing 1
+
+#else
+#include <stdio.h>
+
+int ACE_TMAIN (int, ACE_TCHAR *[])
+{
+ puts ("This example only works on g++ 2.96 and later.\n");
+ return 0;
+}
+
+#endif /* __GNUC__ */