| Index: tools/gn/source_file.h | 
| diff --git a/tools/gn/source_file.h b/tools/gn/source_file.h | 
| index d883bc061f6106e0a0826db6732f84023cf5cc78..4ee6795963d623086bbd0d3ca213498c3c33ac4f 100644 | 
| --- a/tools/gn/source_file.h | 
| +++ b/tools/gn/source_file.h | 
| @@ -5,6 +5,7 @@ | 
| #ifndef TOOLS_GN_SOURCE_FILE_H_ | 
| #define TOOLS_GN_SOURCE_FILE_H_ | 
|  | 
| +#include <algorithm> | 
| #include <string> | 
|  | 
| #include "base/containers/hash_tables.h" | 
| @@ -69,6 +70,10 @@ class SourceFile { | 
| return value_ < other.value_; | 
| } | 
|  | 
| +  void swap(SourceFile& other) { | 
| +    std::swap(value_, other.value_); | 
| +  } | 
| + | 
| private: | 
| friend class SourceDir; | 
|  | 
| @@ -94,4 +99,12 @@ inline size_t hash_value(const SourceFile& v) { | 
|  | 
| }  // namespace BASE_HASH_NAMESPACE | 
|  | 
| +namespace std { | 
| + | 
| +template<> inline void swap(SourceFile& lhs, SourceFile& rhs) { | 
| +  lhs.swap(rhs); | 
| +} | 
| + | 
| +}  // namespace std | 
| + | 
| #endif  // TOOLS_GN_SOURCE_FILE_H_ | 
|  |