diff options
author | dim <dim@FreeBSD.org> | 2012-10-23 18:45:32 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2012-10-23 18:45:32 +0000 |
commit | 99da76dc3d08b3012a3cf73037a072d9467d541f (patch) | |
tree | 226d9f42be774a1f218b861d3d044261e31f78a6 /contrib/libstdc++/src | |
parent | e1bc3b4134d3444ad6395eda2a2cf360b58be705 (diff) | |
download | FreeBSD-src-99da76dc3d08b3012a3cf73037a072d9467d541f.zip FreeBSD-src-99da76dc3d08b3012a3cf73037a072d9467d541f.tar.gz |
Fix a number of other clang warnings in libstdc++, which could appear
when building other C++ software with it. Also fix one actual bug in
libsupc++, which was exposed by such a warning. This latter fix is the
only functional change.
MFC after: 1 week
Diffstat (limited to 'contrib/libstdc++/src')
-rw-r--r-- | contrib/libstdc++/src/locale.cc | 2 | ||||
-rw-r--r-- | contrib/libstdc++/src/strstream.cc | 10 | ||||
-rw-r--r-- | contrib/libstdc++/src/tree.cc | 24 |
3 files changed, 21 insertions, 15 deletions
diff --git a/contrib/libstdc++/src/locale.cc b/contrib/libstdc++/src/locale.cc index 12070eb..a760994 100644 --- a/contrib/libstdc++/src/locale.cc +++ b/contrib/libstdc++/src/locale.cc @@ -146,7 +146,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) locale::_S_normalize_category(category __cat) { int __ret = 0; - if (__cat == none || (__cat & all) && !(__cat & ~all)) + if (__cat == none || ((__cat & all) && !(__cat & ~all))) __ret = __cat; else { diff --git a/contrib/libstdc++/src/strstream.cc b/contrib/libstdc++/src/strstream.cc index 5bbb33a..f221454 100644 --- a/contrib/libstdc++/src/strstream.cc +++ b/contrib/libstdc++/src/strstream.cc @@ -311,10 +311,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std) strstreambuf::_M_free(char* p) { if (p) - if (_M_free_fun) - _M_free_fun(p); - else - delete[] p; + { + if (_M_free_fun) + _M_free_fun(p); + else + delete[] p; + } } void diff --git a/contrib/libstdc++/src/tree.cc b/contrib/libstdc++/src/tree.cc index 38a3037..b23ca8e 100644 --- a/contrib/libstdc++/src/tree.cc +++ b/contrib/libstdc++/src/tree.cc @@ -316,17 +316,21 @@ _GLIBCXX_BEGIN_NAMESPACE(std) else __z->_M_parent->_M_right = __x; if (__leftmost == __z) - if (__z->_M_right == 0) // __z->_M_left must be null also - __leftmost = __z->_M_parent; - // makes __leftmost == _M_header if __z == __root - else - __leftmost = _Rb_tree_node_base::_S_minimum(__x); + { + if (__z->_M_right == 0) // __z->_M_left must be null also + __leftmost = __z->_M_parent; + // makes __leftmost == _M_header if __z == __root + else + __leftmost = _Rb_tree_node_base::_S_minimum(__x); + } if (__rightmost == __z) - if (__z->_M_left == 0) // __z->_M_right must be null also - __rightmost = __z->_M_parent; - // makes __rightmost == _M_header if __z == __root - else // __x == __z->_M_left - __rightmost = _Rb_tree_node_base::_S_maximum(__x); + { + if (__z->_M_left == 0) // __z->_M_right must be null also + __rightmost = __z->_M_parent; + // makes __rightmost == _M_header if __z == __root + else // __x == __z->_M_left + __rightmost = _Rb_tree_node_base::_S_maximum(__x); + } } if (__y->_M_color != _S_red) { |