From Jason Turner

[stmt.ranged]

Diff to HTML by rtfpessoa

tmp/tmpqeem03jq/{from.md → to.md} RENAMED
@@ -47,19 +47,19 @@ exposition only, and `_RangeT` is the type of the *expression*, and
47
  are looked up in the scope of class `\mbox{_RangeT}` as if by class
48
  member access lookup ([[basic.lookup.classref]]), and if either (or
49
  both) finds at least one declaration, *begin-expr* and *end-expr* are
50
  `__range.begin()` and `__range.end()`, respectively;
51
  - otherwise, *begin-expr* and *end-expr* are `begin(__range)` and
52
- `end(__range)`, respectively, where `begin` and `end` are looked up
53
- with argument-dependent lookup ([[basic.lookup.argdep]]). For the
54
- purposes of this name lookup, namespace `std` is an associated
55
- namespace.
56
 
57
  ``` cpp
58
  int array[5] = { 1, 2, 3, 4, 5 };
59
  for (int& x : array)
60
  x *= 2;
61
  ```
62
 
63
  In the *decl-specifier-seq* of a *for-range-declaration*, each
64
- *decl-specifier* shall be either a *type-specifier* or `constexpr`.
 
65
 
 
47
  are looked up in the scope of class `\mbox{_RangeT}` as if by class
48
  member access lookup ([[basic.lookup.classref]]), and if either (or
49
  both) finds at least one declaration, *begin-expr* and *end-expr* are
50
  `__range.begin()` and `__range.end()`, respectively;
51
  - otherwise, *begin-expr* and *end-expr* are `begin(__range)` and
52
+ `end(__range)`, respectively, where `begin` and `end` are looked up in
53
+ the associated namespaces ([[basic.lookup.argdep]]). Ordinary
54
+ unqualified lookup ([[basic.lookup.unqual]]) is not performed.
 
55
 
56
  ``` cpp
57
  int array[5] = { 1, 2, 3, 4, 5 };
58
  for (int& x : array)
59
  x *= 2;
60
  ```
61
 
62
  In the *decl-specifier-seq* of a *for-range-declaration*, each
63
+ *decl-specifier* shall be either a *type-specifier* or `constexpr`. The
64
+ *decl-specifier-seq* shall not define a class or enumeration.
65