summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ACE/tests/Compiler_Features_38_Test.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/ACE/tests/Compiler_Features_38_Test.cpp b/ACE/tests/Compiler_Features_38_Test.cpp
index aae2d5a330e..83733394013 100644
--- a/ACE/tests/Compiler_Features_38_Test.cpp
+++ b/ACE/tests/Compiler_Features_38_Test.cpp
@@ -5,6 +5,17 @@
#include "test_config.h"
+// g++ 4.1 can't handle this construct
+#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 1))
+# define ACE_DISABLE_TEST
+#endif
+
+// Visual Studio 7.1 can't handle this construct
+#if (_MSC_VER == 1310)
+# define ACE_DISABLE_TEST
+#endif
+
+#if !defined (ACE_DISABLE_TEST)
template <typename T>
class Foo_T
{
@@ -22,15 +33,18 @@ struct Foo2
long i;
};
typedef Foo_T<Foo2> Foo2Seq;
+#endif /* !ACE_DISABLE_TEST */
int
run_main (int, ACE_TCHAR *[])
{
ACE_START_TEST (ACE_TEXT("Compiler_Features_38_Test"));
+#if !defined (ACE_DISABLE_TEST)
Foo2Seq f2;
long const j = f2[0].i;
ACE_UNUSED_ARG(j);
+#endif /* !ACE_DISABLE_TEST */
ACE_DEBUG ((LM_INFO,
ACE_TEXT ("C++ support ok\n")));