The swap function template was moved from <algorithm> to <utility> in C++0x. Does the former include the latter in C++0x? Or do they both include a common header the defines swap?

In other words, is the following code guaranteed to compile in C++0x?

#include <algorithm>   // will this pull in std::swap?

// ...

using std::swap;
swap(a, b);
Edit
Report