C++ Logo

std-discussion

Advanced search

Re: Earliest version with vector::data

From: Daniel Krügler <daniel.kruegler_at_[hidden]>
Date: Tue, 17 Aug 2021 15:10:51 +0200
Am Di., 17. Aug. 2021 um 15:02 Uhr schrieb Hans Åberg <haberg-1_at_[hidden]>:
>
>
> > On 17 Aug 2021, at 11:23, Daniel Krügler <daniel.kruegler_at_[hidden]> wrote:
> >
> > Am Di., 17. Aug. 2021 um 10:48 Uhr schrieb Hans Åberg via
> > Std-Discussion <std-discussion_at_[hidden]>:
> >>
> >> 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?

Sure. As I said: There exists no normative standard that specifies
vector::data() before C++11. If the compiler is still maintained, you
could open an improvement issue, asking for adding this, but that is
nothing you could rely on or use as a criterion for non-conformance.

- Daniel

Received on 2021-08-17 08:11:08