| Index: base/memory/scoped_ptr.h
 | 
| diff --git a/base/memory/scoped_ptr.h b/base/memory/scoped_ptr.h
 | 
| index 51750d36feb8ecd9c1fb9804a910089005a4a507..0120f891d2c37206b7782f910f8679b2b7780f64 100644
 | 
| --- a/base/memory/scoped_ptr.h
 | 
| +++ b/base/memory/scoped_ptr.h
 | 
| @@ -37,42 +37,43 @@
 | 
|  // in that they are "movable but not copyable."  You can use the scopers in
 | 
|  // the parameter and return types of functions to signify ownership transfer
 | 
|  // in to and out of a function.  When calling a function that has a scoper
 | 
| -// as the argument type, it must be called with the result of an analogous
 | 
| -// scoper's Pass() function or another function that generates a temporary;
 | 
| -// passing by copy will NOT work.  Here is an example using scoped_ptr:
 | 
| +// as the argument type, it must be called with an rvalue of a scoper, which
 | 
| +// can be created by using std::move(), or the result of another function that
 | 
| +// generates a temporary; passing by copy will NOT work.  Here is an example
 | 
| +// using scoped_ptr:
 | 
|  //
 | 
|  //   void TakesOwnership(scoped_ptr<Foo> arg) {
 | 
| -//     // Do something with arg
 | 
| +//     // Do something with arg.
 | 
|  //   }
 | 
|  //   scoped_ptr<Foo> CreateFoo() {
 | 
| -//     // No need for calling Pass() because we are constructing a temporary
 | 
| -//     // for the return value.
 | 
| +//     // No need for calling std::move() for returning a move-only value, or
 | 
| +//     // when you already have an rvalue as we do here.
 | 
|  //     return scoped_ptr<Foo>(new Foo("new"));
 | 
|  //   }
 | 
|  //   scoped_ptr<Foo> PassThru(scoped_ptr<Foo> arg) {
 | 
| -//     return arg.Pass();
 | 
| +//     return arg;
 | 
|  //   }
 | 
|  //
 | 
|  //   {
 | 
|  //     scoped_ptr<Foo> ptr(new Foo("yay"));  // ptr manages Foo("yay").
 | 
| -//     TakesOwnership(ptr.Pass());           // ptr no longer owns Foo("yay").
 | 
| +//     TakesOwnership(std::move(ptr));       // ptr no longer owns Foo("yay").
 | 
|  //     scoped_ptr<Foo> ptr2 = CreateFoo();   // ptr2 owns the return Foo.
 | 
|  //     scoped_ptr<Foo> ptr3 =                // ptr3 now owns what was in ptr2.
 | 
| -//         PassThru(ptr2.Pass());            // ptr2 is correspondingly nullptr.
 | 
| +//         PassThru(std::move(ptr2));        // ptr2 is correspondingly nullptr.
 | 
|  //   }
 | 
|  //
 | 
| -// Notice that if you do not call Pass() when returning from PassThru(), or
 | 
| +// Notice that if you do not call std::move() when returning from PassThru(), or
 | 
|  // when invoking TakesOwnership(), the code will not compile because scopers
 | 
|  // are not copyable; they only implement move semantics which require calling
 | 
| -// the Pass() function to signify a destructive transfer of state. CreateFoo()
 | 
| -// is different though because we are constructing a temporary on the return
 | 
| -// line and thus can avoid needing to call Pass().
 | 
| +// the std::move() function to signify a destructive transfer of state.
 | 
| +// CreateFoo() is different though because we are constructing a temporary on
 | 
| +// the return line and thus can avoid needing to call std::move().
 | 
|  //
 | 
| -// Pass() properly handles upcast in initialization, i.e. you can use a
 | 
| -// scoped_ptr<Child> to initialize a scoped_ptr<Parent>:
 | 
| +// The conversion move-constructor properly handles upcast in initialization,
 | 
| +// i.e. you can use a scoped_ptr<Child> to initialize a scoped_ptr<Parent>:
 | 
|  //
 | 
|  //   scoped_ptr<Foo> foo(new Foo());
 | 
| -//   scoped_ptr<FooParent> parent(foo.Pass());
 | 
| +//   scoped_ptr<FooParent> parent(std::move(foo));
 | 
|  
 | 
|  #ifndef BASE_MEMORY_SCOPED_PTR_H_
 | 
|  #define BASE_MEMORY_SCOPED_PTR_H_
 | 
| 
 |