@@ -1235,8 +1235,9 @@ xs = prepend::<int>(xs, 15);
12351235xs = prepend::<int>(xs, 20);
12361236~~~
12371237
1238- In the type grammar, the language uses ` Type<T, U, V> ` to describe a list of
1239- type parameters, but expressions use ` identifier::<T, U, V> ` .
1238+ In declarations, the language uses ` Type<T, U, V> ` to describe a list of type
1239+ parameters, but expressions use ` identifier::<T, U, V> ` , to disambiguate the
1240+ ` < ` operator.
12401241
12411242## Defining list equality with generics
12421243
@@ -1313,7 +1314,7 @@ provide.
13131314
13141315In uncommon cases, the indirection can provide a performance gain or memory
13151316reduction by making values smaller. However, unboxed values should almost
1316- always be preferred.
1317+ always be preferred when they are usable .
13171318
13181319Note that returning large unboxed values via boxes is unnecessary. A large
13191320value is returned via a hidden output parameter, and the decision on where to
@@ -1324,7 +1325,7 @@ fn foo() -> (u64, u64, u64, u64, u64, u64) {
13241325 (5, 5, 5, 5, 5, 5)
13251326}
13261327
1327- let x = ~foo(); // allocates, and writes the integers directly to it
1328+ let x = ~foo(); // allocates a ~ box , and writes the integers directly to it
13281329~~~~
13291330
13301331Beyond the properties granted by the size, an owned box behaves as a regular
@@ -1403,7 +1404,7 @@ compute_distance(managed_box, owned_box);
14031404Here the `&` operator is used to take the address of the variable
14041405`on_the_stack`; this is because `on_the_stack` has the type `Point`
14051406(that is, a struct value) and we have to take its address to get a
1406- value . We also call this _borrowing_ the local variable
1407+ reference . We also call this _borrowing_ the local variable
14071408`on_the_stack`, because we are creating an alias: that is, another
14081409route to the same data.
14091410
0 commit comments