diff options
author | Steve Huston <shuston@riverace.com> | 2002-07-12 17:06:00 +0000 |
---|---|---|
committer | Steve Huston <shuston@riverace.com> | 2002-07-12 17:06:00 +0000 |
commit | 36c195573128661e2e76a54cbe84bd54f0c9601d (patch) | |
tree | 204e56e7c2d8ef39c97756d08f769a42dd73646e | |
parent | 63cba3a07b666f93ade8080d364412e264b56bb8 (diff) | |
download | ATCD-36c195573128661e2e76a54cbe84bd54f0c9601d.tar.gz |
ChangeLogTag:Fri Jul 12 13:02:51 2002 Steve Huston <shuston@riverace.com>
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 6 | ||||
-rw-r--r-- | ace/String_Base.h | 2 | ||||
-rw-r--r-- | ace/String_Base.i | 10 |
4 files changed, 18 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog index 2866532b110..d5c06efc105 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Fri Jul 12 13:02:51 2002 Steve Huston <shuston@riverace.com> + + * ace/String_Base.{h i} (rfind): Changed pos argument from size_t to + ssize_t to make proper use of npos and avoid compile error for + g++ 2.95.2. + Fri Jul 12 12:37:42 2002 Steve Huston <shuston@riverace.com> * ace/DLL_Manager.cpp: diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 2866532b110..d5c06efc105 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,9 @@ +Fri Jul 12 13:02:51 2002 Steve Huston <shuston@riverace.com> + + * ace/String_Base.{h i} (rfind): Changed pos argument from size_t to + ssize_t to make proper use of npos and avoid compile error for + g++ 2.95.2. + Fri Jul 12 12:37:42 2002 Steve Huston <shuston@riverace.com> * ace/DLL_Manager.cpp: diff --git a/ace/String_Base.h b/ace/String_Base.h index 35bc1c740aa..1c0afbd440b 100644 --- a/ace/String_Base.h +++ b/ace/String_Base.h @@ -298,7 +298,7 @@ public: * @param pos Starting index position to start searching for string @a str. * @return Index value of the first location of string @a str else npos. */ - ssize_t rfind (CHAR c, size_t pos = ACE_static_cast (size_t, npos)) const; + ssize_t rfind (CHAR c, ssize_t pos = npos) const; /** * Equality comparison operator (must match entire string). diff --git a/ace/String_Base.i b/ace/String_Base.i index 0ac1ff3f764..8664859354f 100644 --- a/ace/String_Base.i +++ b/ace/String_Base.i @@ -389,18 +389,18 @@ ACE_String_Base<CHAR>::strstr (const ACE_String_Base<CHAR> &s) const } template <class CHAR> ACE_INLINE ssize_t -ACE_String_Base<CHAR>::rfind (CHAR c, size_t pos) const +ACE_String_Base<CHAR>::rfind (CHAR c, ssize_t pos) const { - if (pos > this->len_) + if (pos > ACE_static_cast (ssize_t, this->len_)) { - pos = this->len_; + pos = ACE_static_cast (ssize_t, this->len_); } - for (size_t i = pos - 1; i >= 0; i--) + for (ssize_t i = pos - 1; i >= 0; i--) { if (this->rep_[i] == c) { - return ACE_static_cast (ssize_t, i); + return i; } } |