libstdc++: Fix std::deque::operator[] Xmethod [PR112491]
commit452476db0c705caeac8712d560fc16ced0ca5226
authorJonathan Wakely <jwakely@redhat.com>
Tue, 14 Nov 2023 15:08:13 +0000 (14 15:08 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Wed, 15 Nov 2023 11:16:49 +0000 (15 11:16 +0000)
treeb6723b5a3b8f75cc29fb15d98ef46cf5c9ed3fc0
parentcbd0fe22a5ced9751d2450dc4fd6fe3525c2fc02
libstdc++: Fix std::deque::operator[] Xmethod [PR112491]

The Xmethod for std::deque::operator[] has the same bug that I recently
fixed for the std::deque::size() Xmethod. The first node might have
unused capacity at the start, which needs to be accounted for when
indexing into the deque.

libstdc++-v3/ChangeLog:

PR libstdc++/112491
* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index):
Correctly handle unused capacity at the start of the first node.
* testsuite/libstdc++-xmethods/deque.cc: Check index operator
when elements have been removed from the front.
libstdc++-v3/python/libstdcxx/v6/xmethods.py
libstdc++-v3/testsuite/libstdc++-xmethods/deque.cc