Bugs in gcc 4.4 experimental c++0x libstdc++?
Chris Jefferson
chris@bubblescope.net
Thu May 15 23:13:00 GMT 2008
2008/5/15 Germán Diago <germandiago@gmail.com>:
> Hello. I've been using g++-4.4 from svn and I think there is a bug in
> experimental libstdc++.
>
> The function template <class... _Args> void push_back(_Args... args)
> doesn't update the vector size.
>
> And another thing I don't know if it's a bug:
>
> I used code like this:
>
>
> void f(vector<int> && arg);
>
>
> int main(int argc, char * argv[])
> {
> vector<int> v(3);
> v.push_back(1); v.push_back(2); v.push_back(3);
>
> f(move(v));
>
> }
In this case, nothing should happen by default. A rvalue reference is
like an lvalue reference in that simply passing them around does
nothing at all. Of course if in f you start doing things with 'arg',
then move constructors and such things may get called.
Chris
More information about the Libstdc++
mailing list