Summary:
* folly/wangle/futures/Future-inl.h (whenAll): Do not compare
signed (std::distance) with unsigned(size_t): add an assertion
to eliminate the possibility of negative, then assign to a new
size_t "n".
Test Plan:
Run this and note there are fewer errors than before:
fbconfig --platform-all=gcc-4.9-glibc-2.20 -r folly && fbmake dbgo
Reviewed By: jsedgwick@fb.com
Subscribers: trunkagent, fugalh, folly-diffs@
FB internal diff:
D1770668
Tasks:
5941250
Signature: t1:
1770668:
1420736965:
fc722657a2ec523052fd96c33d65d5ca24aae61c
typedef
typename std::iterator_traits<InputIterator>::value_type::value_type T;
- auto n = std::distance(first, last);
- if (n == 0) {
+ if (first >= last) {
return makeFuture(std::vector<Try<T>>());
}
+ size_t n = std::distance(first, last);
auto ctx = new detail::WhenAllContext<T>();