@@ -72,13 +72,13 @@ The following expressions can create mutable lvalues:
7272* [ Temporary values] ( #temporary-lifetimes ) .
7373* [ Fields] ( #field-expressions ) , this evaluates the subexpression in a mutable
7474 lvalue context.
75- * [ Dereferenes ] ( #the-dereference-operator ) of a ` *mut T ` pointer.
75+ * [ Dereferences ] ( #the-dereference-operator ) of a ` *mut T ` pointer.
7676* Dereference of a variable, or field of a variable, with type ` &mut T ` . Note:
7777 this is an exception to the requirement for the next rule.
7878* Dereferences of a type that implements ` DerefMut ` , this then requires that
7979 the value being dereferenced is evaluated is a mutable lvalue context.
8080* [ Indexing] ( #index-expressions ) of a type that implements ` DerefMut ` , this
81- then evalutes the value being indexed (but not the index) in mutable lvalue
81+ then evaluates the value being indexed (but not the index) in mutable lvalue
8282 context.
8383
8484### Temporary lifetimes
@@ -168,7 +168,7 @@ also constant expressions:
168168* [ Paths] ( #path-expressions ) to [ functions] ( items.html#functions ) and constants.
169169 Recursively defining constants is not allowed.
170170* Paths to statics, so long as only their address, not their value, is used.
171- This includes using their value indirectly through a compilicated expression.
171+ This includes using their value indirectly through a complicated expression.
172172 \*
173173* [ Tuple expressions] ( #tuple-expressions ) .
174174* [ Array expressions] ( #array-expressions ) .
@@ -267,7 +267,9 @@ the field values of a new instance of the struct. A field name can be any
267267[ identifier] ( identifiers.html ) , and is separated from its value expression by a
268268colon. In the case of a tuple struct the field names are numbers corresponding
269269to the position of the field. The numbers must be written in decimal,
270- containing no underscores and with no leading zeros or integer suffix.
270+ containing no underscores and with no leading zeros or integer suffix. A value
271+ of a [ union] ( items.html#unions ) type can also be created using this syntax,
272+ except that it must specify exactly one field.
271273
272274Struct expressions can't be used directly in the head of a [ loop] ( #loops ) or an
273275[ ` if ` ] ( #if-expressions ) , [ ` if let ` ] ( #if-let-expressions ) or
@@ -441,8 +443,8 @@ A _field expression_ consists of an expression followed by a single dot and an
441443[ identifier] ( identifiers.html ) , when not immediately followed by a
442444parenthesized expression-list (the latter is always a [ method call
443445expression] ( #method-call-expressions ) ). A field expression denotes a field of a
444- [ struct] ( types.html#struct-types ) . To call a function stored in a struct
445- parentheses are needed around the field expression
446+ [ struct] ( types.html#struct-types ) or [ union ] ( items.html#unions ) . To call a
447+ function stored in a struct parentheses are needed around the field expression
446448
447449``` rust,ignore
448450mystruct.myfield;
@@ -452,9 +454,9 @@ mystruct.method(); // Method expression
452454(mystruct.function_field)() // Call expression containing a field expression
453455```
454456
455- A field access is an [ lvalue] ( expressions.html#lvalues-and-rvalues ) referring to the value of
456- that field. When the subexpression is [ mutable ] ( #mutability ) , the field
457- expression is also mutable.
457+ A field access is an [ lvalue] ( expressions.html#lvalues-and-rvalues ) referring
458+ to the location of that field. When the subexpression is
459+ [ mutable ] ( #mutability ) , the field expression is also mutable.
458460
459461Also, if the type of the expression to the left of the dot is a pointer, it is
460462automatically dereferenced as many times as necessary to make the field access
@@ -482,7 +484,7 @@ let d: String = x.f3; // Move out of x.f3
482484### Tuple indexing expressions
483485
484486[ Tuples] ( types.html#tuple-types ) and [ struct tuples] ( items.html#structs ) can be
485- indexed using the number corresponding to the possition of the field. The index
487+ indexed using the number corresponding to the position of the field. The index
486488must be written as a [ decimal literal] ( tokens.html#integer-literals ) with no
487489underscores or suffix. Tuple indexing expressions also differ from field
488490expressions in that they can unambiguously be called as a function. In all
0 commit comments