summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorarseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640>2010-08-29 16:28:38 +0000
committerarseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640>2010-08-29 16:28:38 +0000
commit343653c916026aee9b5cb2fd580863e49dade30f (patch)
tree18f67e89843c640a790b0ff50fa236a2e64f20f7 /src
parent954de8f89a5538129b5ebf89b8fe06678051f516 (diff)
Fixed BCC and MSVC6 compilation errors and warnings
git-svn-id: http://pugixml.googlecode.com/svn/trunk@703 99668b35-9821-0410-8761-19e4c4f06640
Diffstat (limited to 'src')
-rw-r--r--src/pugixml.cpp35
1 files changed, 20 insertions, 15 deletions
diff --git a/src/pugixml.cpp b/src/pugixml.cpp
index b284d3b..40acb64 100644
--- a/src/pugixml.cpp
+++ b/src/pugixml.cpp
@@ -304,7 +304,7 @@ namespace pugi
// full_size == 0 for large strings that occupy the whole page
assert(full_size < (1 << 16) || (page->busy_size == full_size && page_offset == 0));
- header->full_size = full_size < (1 << 16) ? static_cast<uint16_t>(full_size) : 0;
+ header->full_size = static_cast<uint16_t>(full_size < (1 << 16) ? full_size : 0);
return reinterpret_cast<char_t*>(header + 1);
}
@@ -4657,16 +4657,21 @@ namespace pstd
template <typename I, typename Pred> void median(I first, I middle, I last, const Pred& pred)
{
- // median of three for small chunks
- if (last - first <= 40) return median3(first, middle, last, pred);
-
- // median of nine
- size_t step = (last - first + 1) / 8;
+ if (last - first <= 40)
+ {
+ // median of three for small chunks
+ median3(first, middle, last, pred);
+ }
+ else
+ {
+ // median of nine
+ size_t step = (last - first + 1) / 8;
- median3(first, first + step, first + 2 * step, pred);
- median3(middle - step, middle, middle + step, pred);
- median3(last - 2 * step, last - step, last, pred);
- median3(first + step, middle, last - step, pred);
+ median3(first, first + step, first + 2 * step, pred);
+ median3(middle - step, middle, middle + step, pred);
+ median3(last - 2 * step, last - step, last, pred);
+ median3(first + step, middle, last - step, pred);
+ }
}
template <typename I, typename Pred> void sort(I begin, I end, const Pred& pred)
@@ -4956,8 +4961,8 @@ namespace
bool node_is_before(xml_node ln, unsigned int lh, xml_node rn, unsigned int rh)
{
// normalize heights
- for (unsigned int h = rh; h < lh; h++) ln = ln.parent();
- for (unsigned int h = lh; h < rh; h++) rn = rn.parent();
+ for (unsigned int i = rh; i < lh; i++) ln = ln.parent();
+ for (unsigned int j = lh; j < rh; j++) rn = rn.parent();
// one node is the ancestor of the other
if (ln == rn) return lh < rh;
@@ -5894,7 +5899,7 @@ namespace pugi
return *(_end - 1);
case type_unsorted:
- return *pstd::min_element(_begin, _end, document_order_comparator());
+ return *pstd::min_element<iterator>(_begin, _end, document_order_comparator());
default:
assert(!"Invalid node set type");
@@ -7267,7 +7272,7 @@ namespace pugi
// count the string number
unsigned int count = 1;
- for (xpath_ast_node* n = _right; n; n = n->_next) count++;
+ for (xpath_ast_node* nc = _right; nc; nc = nc->_next) count++;
// gather all strings
xpath_string static_buffer[4];
@@ -8797,7 +8802,7 @@ namespace pugi
return _result;
}
- xpath_query::operator unspecified_bool_type() const
+ xpath_query::operator xpath_query::unspecified_bool_type() const
{
return _root ? &xpath_query::_root : 0;
}