summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-12-16 15:33:04 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-12-16 15:33:04 +0000
commit9503a3fb807957e8de547f9d2fb78f61aed9cdc2 (patch)
treef44bd8191420c78105d1aa39482ad7111e94f686
parent1da67d7be87ccd931d12342b542364f273e3bada (diff)
downloadATCD-9503a3fb807957e8de547f9d2fb78f61aed9cdc2.tar.gz
ChangeLogTag: Mon Dec 16 09:29:32 2002 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--TAO/ChangeLog9
-rw-r--r--TAO/tao/CORBA_String.h5
-rw-r--r--TAO/tao/CORBA_String.inl7
3 files changed, 20 insertions, 1 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 3e9da2014ad..f6884016d7b 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,12 @@
+Mon Dec 16 09:29:32 2002 Jeff Parsons <j.parsons@vanderbilt.edu>
+
+ * tao/CORBA_String.h:
+ * tao/CORBA_String.inl:
+
+ Added the spec-required cast operator to char *& for
+ the string_var class. Thanks to Torsten Kuepper
+ <torsten.kuepper@nokia.com> for reporting the oversight.
+
Sun Dec 15 22:26:29 2002 Priyanka Gontla <pgontla@ece.uci.edu>
* tao/CORBALOC_Parser.cpp:
diff --git a/TAO/tao/CORBA_String.h b/TAO/tao/CORBA_String.h
index a5592805ffc..97ee9cff52e 100644
--- a/TAO/tao/CORBA_String.h
+++ b/TAO/tao/CORBA_String.h
@@ -66,9 +66,12 @@ public:
/// assignment operator.
CORBA_String_var &operator= (const CORBA_String_var &s);
- /// access and modify.
+ /// @@@ (JP) TAO-specific, why is this here?
operator char *();
+ /// Spec-defined read/write version.
+ operator char *&();
+
/// only read privileges.
operator const char *() const;
diff --git a/TAO/tao/CORBA_String.inl b/TAO/tao/CORBA_String.inl
index ee4fb81204d..dd634ae06da 100644
--- a/TAO/tao/CORBA_String.inl
+++ b/TAO/tao/CORBA_String.inl
@@ -32,6 +32,7 @@ CORBA_String_var::operator[] (CORBA::ULong slot) const
return this->ptr_[slot];
}
+/// TAO-specific.
ACE_INLINE
CORBA_String_var::operator char *()
{
@@ -39,6 +40,12 @@ CORBA_String_var::operator char *()
}
ACE_INLINE
+CORBA_String_var::operator char *&()
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
CORBA_String_var::operator const char *() const
{
return this->ptr_;