Skip to content

Commit

Permalink
Extend examples for [dcl.spec.auto.general]
Browse files Browse the repository at this point in the history
Signed-off-by: Mauro Russo <[email protected]>
  • Loading branch information
mrussoLuxoft committed Nov 27, 2024
1 parent d017ce4 commit 44a93cb
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions source/declarations.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1836,6 +1836,15 @@
auto g() { return 0.0; } // OK, \tcode{g} returns \tcode{double}
auto (*fp)() -> auto = f; // OK
auto h(); // OK, \tcode{h}'s return type will be deduced when it is defined
auto j() -> auto; // OK, deduction of \tcode{j}'s return type postponed at the definition
auto (*jp)() -> auto = j; // error, cannot use \tcode{j}'s before deducing its return type
auto (*kp)() -> auto; // error, not a function declaration; needs an initializer
constexpr auto l =
[](auto (*fp)() -> auto) // OK, \tcode{l}'s parameter \tcode{fp} is a function pointer,
{ return fp; }; // whose return type will be deduced when \tcode{l} is invoked
int foo();
static_assert(l(foo) == foo); // OK

\end{codeblock}
\end{example}
The \keyword{auto} \grammarterm{type-specifier}
Expand Down

0 comments on commit 44a93cb

Please sign in to comment.