error: `self` parameter is only allowed in associated functions
  --> $DIR/nested-item.rs:5:9
   |
LL | fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &() {
   |         ^^^^ not semantically valid as function parameter
   |
   = note: associated functions are those in `impl` or `trait` definitions

error: `self` parameter is only allowed in associated functions
  --> $DIR/nested-item.rs:5:29
   |
LL | fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &() {
   |                             ^^^^^ not semantically valid as function parameter
   |
   = note: associated functions are those in `impl` or `trait` definitions

error[E0106]: missing lifetime specifier
  --> $DIR/nested-item.rs:5:46
   |
LL | fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &() {
   |                                              ^ expected named lifetime parameter
   |
   = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from
help: consider using the `'static` lifetime, but this is uncommon unless you're returning a borrowed value from a `const` or a `static`
   |
LL | fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &'static () {
   |                                               +++++++
help: instead, you are more likely to want to change the argument to be borrowed...
   |
LL | fn wrap(self: &Wrap<{ fn bar(&self) {} }>) -> &() {
   |               +
help: ...or alternatively, you might want to return an owned value
   |
LL - fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &() {
LL + fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> () {
   |

error[E0412]: cannot find type `Wrap` in this scope
  --> $DIR/nested-item.rs:5:15
   |
LL | fn wrap(self: Wrap<{ fn bar(&self) {} }>) -> &() {
   |               ^^^^ not found in this scope

error: aborting due to 4 previous errors

Some errors have detailed explanations: E0106, E0412.
For more information about an error, try `rustc --explain E0106`.
