error[E0637]: `&` without an explicit lifetime name cannot be used here
  --> $DIR/const-param-elided-lifetime.rs:10:19
   |
LL | struct A<const N: &u8>;
   |                   ^ explicit lifetime name needed here

error[E0637]: `&` without an explicit lifetime name cannot be used here
  --> $DIR/const-param-elided-lifetime.rs:15:15
   |
LL | impl<const N: &u8> A<N> {
   |               ^ explicit lifetime name needed here

error[E0637]: `&` without an explicit lifetime name cannot be used here
  --> $DIR/const-param-elided-lifetime.rs:18:21
   |
LL |     fn foo<const M: &u8>(&self) {}
   |                     ^ explicit lifetime name needed here

error[E0637]: `&` without an explicit lifetime name cannot be used here
  --> $DIR/const-param-elided-lifetime.rs:23:15
   |
LL | impl<const N: &u8> B for A<N> {}
   |               ^ explicit lifetime name needed here

error[E0637]: `&` without an explicit lifetime name cannot be used here
  --> $DIR/const-param-elided-lifetime.rs:27:17
   |
LL | fn bar<const N: &u8>() {}
   |                 ^ explicit lifetime name needed here

error: `&'static u8` is forbidden as the type of a const generic parameter
  --> $DIR/const-param-elided-lifetime.rs:10:19
   |
LL | struct A<const N: &u8>;
   |                   ^^^
   |
   = note: the only supported types are integers, `bool` and `char`
   = help: more complex types are supported with `#![feature(const_generics)]`

error: `&'static u8` is forbidden as the type of a const generic parameter
  --> $DIR/const-param-elided-lifetime.rs:15:15
   |
LL | impl<const N: &u8> A<N> {
   |               ^^^
   |
   = note: the only supported types are integers, `bool` and `char`
   = help: more complex types are supported with `#![feature(const_generics)]`

error: `&'static u8` is forbidden as the type of a const generic parameter
  --> $DIR/const-param-elided-lifetime.rs:23:15
   |
LL | impl<const N: &u8> B for A<N> {}
   |               ^^^
   |
   = note: the only supported types are integers, `bool` and `char`
   = help: more complex types are supported with `#![feature(const_generics)]`

error: `&'static u8` is forbidden as the type of a const generic parameter
  --> $DIR/const-param-elided-lifetime.rs:27:17
   |
LL | fn bar<const N: &u8>() {}
   |                 ^^^
   |
   = note: the only supported types are integers, `bool` and `char`
   = help: more complex types are supported with `#![feature(const_generics)]`

error: `&'static u8` is forbidden as the type of a const generic parameter
  --> $DIR/const-param-elided-lifetime.rs:18:21
   |
LL |     fn foo<const M: &u8>(&self) {}
   |                     ^^^
   |
   = note: the only supported types are integers, `bool` and `char`
   = help: more complex types are supported with `#![feature(const_generics)]`

error: aborting due to 10 previous errors

For more information about this error, try `rustc --explain E0637`.
