summaryrefslogtreecommitdiff
path: root/ace/OS_NS_sys_time.inl
diff options
context:
space:
mode:
Diffstat (limited to 'ace/OS_NS_sys_time.inl')
-rw-r--r--ace/OS_NS_sys_time.inl14
1 files changed, 14 insertions, 0 deletions
diff --git a/ace/OS_NS_sys_time.inl b/ace/OS_NS_sys_time.inl
index a2c25b18e5d..6aec9b145dc 100644
--- a/ace/OS_NS_sys_time.inl
+++ b/ace/OS_NS_sys_time.inl
@@ -8,6 +8,16 @@
# include "ace/OS_NS_time.h"
#endif /* VXWORKS || CHORUS || ACE_PSOS */
+#if defined (ACE_WIN32) && defined (_WIN32_WCE)
+// Something is a bit brain-damaged here and I'm not sure what... this code
+// compiled before the OS reorg for ACE 5.4. Since then it hasn't - eVC
+// complains that the operators that return ACE_Time_Value are C-linkage
+// functions that can't return a C++ class. The only way I've found to
+// defeat this is to wrap the whole class in extern "C++".
+// - Steve Huston, 23-Aug-2004
+extern "C++" {
+#endif
+
ACE_INLINE ACE_Time_Value
ACE_OS::gettimeofday (void)
{
@@ -75,3 +85,7 @@ ACE_OS::gettimeofday (void)
return ACE_Time_Value (tv);
#endif // !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32)
}
+
+#if defined (ACE_WIN32) && defined (_WIN32_WCE)
+}
+#endif