This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 112e. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
[Voted into WP at March, 2010 meeting.]
188.8.131.52 [dcl.spec.auto] paragraph 6 says,
Once the type of a declarator-id has been determined according to 9.3.4 [dcl.meaning], the type of the declared variable using the declarator-id is determined from the type of its initializer using the rules for template argument deduction. Let T be the type that has been determined for a variable identifier d. Obtain P from T by replacing the occurrences of auto with either a new invented type template parameter U or, if the initializer is a braced-init-list (9.4.5 [dcl.init.list]), with std::initializer_list<U>. The type deduced for the variable d is then the deduced type determined using the rules of template argument deduction from a function call (184.108.40.206 [temp.deduct.call]), where P is a function template parameter type and the initializer for d is the corresponding argument.
The reference to “the deduced type” is unclear; it could be taken as referring either to the template parameter or to the function parameter type. 220.127.116.11 [temp.deduct.call] uses the term “deduced A,” and that usage should be repeated here.
Proposed resolution (October, 2009):
Change 18.104.22.168 [dcl.spec.auto] paragraph 6 as follows:
...The type deduced for the variable d is then the deduced
typedetermined using the rules of template argument deduction...