@@ -370,7 +370,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
operator-(const _Self& __x, const _Self& __y) _GLIBCXX_NOEXCEPT
{
return difference_type(_S_buffer_size())
- * (__x._M_node - __y._M_node - int(__x._M_node != 0))
+ * (__x._M_node - __y._M_node - bool(__x._M_node))
+ (__x._M_cur - __x._M_first)
+ (__y._M_last - __y._M_cur);
}
@@ -383,10 +383,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_GLIBCXX_NODISCARD
friend difference_type
operator-(const _Self& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y) _GLIBCXX_NOEXCEPT
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ _GLIBCXX_NOEXCEPT
{
return difference_type(_S_buffer_size())
- * (__x._M_node - __y._M_node - int(__x._M_node != 0))
+ * (__x._M_node - __y._M_node - bool(__x._M_node))
+ (__x._M_cur - __x._M_first)
+ (__y._M_last - __y._M_cur);
}