diff options
author | Steve Huston <shuston@riverace.com> | 2011-02-01 14:32:38 +0000 |
---|---|---|
committer | Steve Huston <shuston@riverace.com> | 2011-02-01 14:32:38 +0000 |
commit | 7e19983440a854212d66fc165997a9445473e4ac (patch) | |
tree | 3d28bfcd607b106ecece8ee4910105bd0a97badf | |
parent | 3c71370fe526f21bfec53df52096ba480a13367a (diff) | |
download | ATCD-7e19983440a854212d66fc165997a9445473e4ac.tar.gz |
ChangeLogTag:Tue Feb 1 14:28:18 UTC 2011 Steve Huston <shuston@riverace.com>
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ace/String_Base.cpp | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 8e535a7f447..a1d8c7eb4ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Tue Feb 1 14:28:18 UTC 2011 Steve Huston <shuston@riverace.com> + + * ace/String_Base.cpp (operator+=): Add a temporary for the return + value to quiet an IBM XL C++ 10 optimizer warning about returning + the address of a temporary. No, I'm not kidding. + Wed Jan 26 20:17:28 UTC 2011 Steve Huston <shuston@riverace.com> * include/makeinclude/platform_aix_ibm.GNU: If XL C/C++ 10.1 is used, diff --git a/ace/String_Base.cpp b/ace/String_Base.cpp index b674c659859..4906c18daf3 100644 --- a/ace/String_Base.cpp +++ b/ace/String_Base.cpp @@ -655,7 +655,9 @@ ACE_String_Base<ACE_CHAR_T>::operator+= (const ACE_CHAR_T c) { ACE_TRACE ("ACE_String_Base<ACE_CHAR_T>::operator+=(const ACE_CHAR_T)"); const size_type slen = 1; - return this->append (&c, slen); + // This temp is silly but it quiets an optimizer warning in IBM XL C++ 10. + ACE_String_Base<ACE_CHAR_T>& r = this->append (&c, slen); + return r; } ACE_END_VERSIONED_NAMESPACE_DECL |