On Tue, 17 Aug 2021 at 14:02, Hans Åberg via Std-Discussion <std-discussion@lists.isocpp.org> wrote:

> On 17 Aug 2021, at 11:23, Daniel Krügler <daniel.kruegler@gmail.com> wrote:
>
> Am Di., 17. Aug. 2021 um 10:48 Uhr schrieb Hans Åberg via
> Std-Discussion <std-discussion@lists.isocpp.org>:
>>
>> Which is the earliest C++ version of which vector::data should be considered a part? —It is not in the ISO+IEC+14882-1998 document, but there is a proposal from 2004 to add it.
>>
>> https://cplusplus.github.io/LWG/issue464
>
> It should be guaranteed to be specified in the C++11 standard, but the
> C++ committee has voted the above-mentioned issue into CD1 in 2008. So
> some vendors may have added this function even in C++03 mode (in case
> they have updated their library implementations), but you cannot rely
> on that.

The issue is with GNU Bison that writes C++ parser files intended to compile with several C++ versions. Then GCC 4.2 from 2007-2008 has C++98, but does not have vector::data. Is that correct?

That seems unlikely to be correct. godbolt.org does not have gcc 4.2, but it has gcc 4.1.2 (from 2006), and that has vector::data.

https://github.com/gcc-mirror/gcc/commit/8b5f07a224611f7dcff90910b493b93c2ef0c6b8 indicates that the earliest gcc release that contains it is gcc 4.1.0.