warning: label name `'a` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:10:9
   |
LL |     fn foo<'a>() {
   |            -- first declared here
LL |         'a: loop { break 'a; }
   |         ^^ lifetime 'a already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:35:13
   |
LL |     impl<'bad, 'c> Struct<'bad, 'c> {
   |          ---- first declared here
LL |         fn meth_bad(&self) {
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:42:13
   |
LL |     impl<'b, 'bad> Struct<'b, 'bad> {
   |              ---- first declared here
LL |         fn meth_bad2(&self) {
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:49:13
   |
LL |         fn meth_bad3<'bad>(x: &'bad i8) {
   |                      ---- first declared here
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:54:13
   |
LL |         fn meth_bad4<'a,'bad>(x: &'a i8, y: &'bad i8) {
   |                         ---- first declared here
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:61:13
   |
LL |     impl <'bad, 'e> Enum<'bad, 'e> {
   |           ---- first declared here
LL |         fn meth_bad(&self) {
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:67:13
   |
LL |     impl <'d, 'bad> Enum<'d, 'bad> {
   |               ---- first declared here
LL |         fn meth_bad2(&self) {
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:73:13
   |
LL |         fn meth_bad3<'bad>(x: &'bad i8) {
   |                      ---- first declared here
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:78:13
   |
LL |         fn meth_bad4<'a,'bad>(x: &'bad i8) {
   |                         ---- first declared here
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:88:13
   |
LL |     trait HasDefaultMethod1<'bad> {
   |                             ---- first declared here
...
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:94:13
   |
LL |     trait HasDefaultMethod2<'a,'bad> {
   |                                ---- first declared here
LL |         fn meth_bad(&self) {
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

warning: label name `'bad` shadows a lifetime name that is already in scope
  --> $DIR/loops-reject-labels-shadowing-lifetimes.rs:100:13
   |
LL |         fn meth_bad<'bad>(&self) {
   |                     ---- first declared here
LL |             'bad: loop { break 'bad; }
   |             ^^^^ lifetime 'bad already in scope

