summaryrefslogtreecommitdiff
path: root/ACE/tests/Compiler_Features_32_Test.cpp
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2013-12-31 10:16:54 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2013-12-31 10:16:54 +0000
commit9d99baa6d8e4e56c4d427b3bf4cc108b08932b5e (patch)
tree3229739d13545e45010750d37853f4347c82b7a6 /ACE/tests/Compiler_Features_32_Test.cpp
parentac9d6ca45a9748aaef94072a0332081974cf44e0 (diff)
downloadATCD-9d99baa6d8e4e56c4d427b3bf4cc108b08932b5e.tar.gz
Tue Dec 31 10:17:54 UTC 2013 Johnny Willemsen <jwillemsen@remedy.nl>
* tests/Compiler_Features_32_Test.cpp: * tests/run_test.lst: * tests/tests.mpc: New C++11 test for unions
Diffstat (limited to 'ACE/tests/Compiler_Features_32_Test.cpp')
-rw-r--r--ACE/tests/Compiler_Features_32_Test.cpp64
1 files changed, 64 insertions, 0 deletions
diff --git a/ACE/tests/Compiler_Features_32_Test.cpp b/ACE/tests/Compiler_Features_32_Test.cpp
new file mode 100644
index 00000000000..f6c6263a952
--- /dev/null
+++ b/ACE/tests/Compiler_Features_32_Test.cpp
@@ -0,0 +1,64 @@
+// $Id$
+
+/**
+ * This program checks if the compiler doesn't have a certain bug
+ * that we encountered when testing C++11 features
+ */
+
+#include "test_config.h"
+
+#if defined (ACE_HAS_CPP11)
+
+#include <string>
+
+class A
+{
+public:
+ A () = default;
+private:
+ union u_type_
+ {
+ u_type_ ();
+ ~u_type_ ();
+ std::string string_member_;
+ bool bool_member_;
+ } u_;
+};
+
+A::u_type_::u_type_ ()
+{
+}
+
+A::u_type_::~u_type_ ()
+{
+}
+
+int
+run_main (int, ACE_TCHAR *[])
+{
+ ACE_START_TEST (ACE_TEXT("Compiler_Features_32_Test"));
+
+ A a_v;
+
+ ACE_DEBUG ((LM_INFO,
+ ACE_TEXT ("C++11 support ok\n")));
+
+ ACE_END_TEST;
+
+ return 0;
+}
+
+#else
+int
+run_main (int, ACE_TCHAR *[])
+{
+ ACE_START_TEST (ACE_TEXT("Compiler_Features_32_Test"));
+
+ ACE_DEBUG ((LM_INFO,
+ ACE_TEXT ("No C++11 support enabled\n")));
+
+ ACE_END_TEST;
+ return 0;
+}
+
+#endif