summaryrefslogtreecommitdiff
path: root/TAO/tao/diffs/OctetSeq.diff
blob: 1bc77e5a3d40663e5b7fe0a465033287a3e06cbd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
--- orig/OctetSeqC.cpp	2006-05-16 17:15:30.000000000 -0500
+++ OctetSeqC.cpp	2006-05-16 16:53:30.000000000 -0500
@@ -119,6 +119,26 @@
   return TAO::demarshal_sequence(strm, _tao_sequence);
 }
 
+#if (TAO_HAS_VERSIONED_NAMESPACE || ACE_HAS_VERSIONED_NAMESPACE)
+
+CORBA::Boolean
+operator==(const CORBA::OctetSeq &lhs, const CORBA::OctetSeq &rhs)
+{
+  return ::operator==
+    (static_cast<const TAO::unbounded_value_sequence< CORBA::Octet > &>(lhs),
+     static_cast<const TAO::unbounded_value_sequence< CORBA::Octet > &>(rhs));
+}
+
+CORBA::Boolean
+operator!=(const CORBA::OctetSeq &lhs, const CORBA::OctetSeq &rhs)
+{
+  return !::operator==
+    (static_cast<const TAO::unbounded_value_sequence< CORBA::Octet > &>(lhs),
+     static_cast<const TAO::unbounded_value_sequence< CORBA::Octet > &>(rhs));
+}
+
+#endif /* TAO_HAS_VERSIONED_NAMESPACE || ACE_HAS_VERSIONED_NAMESPACE */
+
 #endif /* _TAO_CDR_OP_CORBA_OctetSeq_CPP_ */
 
 TAO_END_VERSIONED_NAMESPACE_DECL
--- orig/OctetSeqC.h	2006-05-16 17:19:31.000000000 -0500
+++ OctetSeqC.h	2006-05-16 17:23:31.000000000 -0500
@@ -131,6 +131,19 @@
 {
 }
 
+// Workaround for a Visual Studio .NET bug where this class is not
+// properly imported by an application if typedef'd or subclassed,
+// resulting in 'multiply defined' link errors. The export macro
+// here forces an explicit import by the application. Please see
+// http://support.microsoft.com/default.aspx?scid=kb;en-us;309801
+// The problem stems from use of the type below in PortableServer,
+// but we put the instantiation here because the application will
+// need to see it in *C.h to avoid the error.
+#if defined ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
+  template class TAO_Export TAO::unbounded_value_sequence<CORBA::OctetSeq>;
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT */
+
+
 // TAO_IDL - Generated from
 // be\be_visitor_sequence/cdr_op_ch.cpp:71
 
@@ -151,6 +164,14 @@
 // TAO_IDL - Generated from
 // be\be_codegen.cpp:1062
 
+// Added to handle the namespace resolution.
+#if (TAO_HAS_VERSIONED_NAMESPACE || ACE_HAS_VERSIONED_NAMESPACE)
+
+TAO_Export bool operator== (const CORBA::OctetSeq &, const CORBA::OctetSeq &);
+TAO_Export bool operator!= (const CORBA::OctetSeq &, const CORBA::OctetSeq &);
+
+#endif /* TAO_HAS_VERSIONED_NAMESPACE || ACE_HAS_VERSIONED_NAMESPACE */
+
 TAO_END_VERSIONED_NAMESPACE_DECL
 
 #if defined(_MSC_VER)