]> git.lizzy.rs Git - rust.git/commitdiff
Rollup merge of #35670 - RockyTV:e0365, r=jonathandturner
authorJonathan Turner <jonathandturner@users.noreply.github.com>
Wed, 17 Aug 2016 13:25:25 +0000 (06:25 -0700)
committerGitHub <noreply@github.com>
Wed, 17 Aug 2016 13:25:25 +0000 (06:25 -0700)
Update error E0365 to new format

Fixes #35633 as part of #35233.

r? @jonathandturner

1  2 
src/librustc_resolve/resolve_imports.rs

index 1e40aa7d1876620d276d7eb1bc9f99ea63cabc49,67588912014ae74e6073108690d1c8e8d041eaf3..e08a30e40d354fb0db482f545fbc0dce56c95834
@@@ -505,9 -505,7 +505,9 @@@ impl<'a, 'b:'a> ImportResolver<'a, 'b> 
                  }
                  Success(binding) if !binding.is_importable() => {
                      let msg = format!("`{}` is not directly importable", target);
 -                    span_err!(self.session, directive.span, E0253, "{}", &msg);
 +                    struct_span_err!(self.session, directive.span, E0253, "{}", &msg)
 +                        .span_label(directive.span, &format!("cannot be imported directly"))
 +                        .emit();
                      // Do not import this illegal binding. Import a dummy binding and pretend
                      // everything is fine
                      self.import_dummy_binding(module, directive);
                                         source);
                      self.session.add_lint(PRIVATE_IN_PUBLIC, directive.id, directive.span, msg);
                  } else {
-                     let msg = format!("`{}` is private, and cannot be reexported", source);
-                     let note_msg =
-                         format!("consider declaring type or module `{}` with `pub`", source);
-                     struct_span_err!(self.session, directive.span, E0365, "{}", &msg)
-                         .span_note(directive.span, &note_msg)
-                         .emit();
+                     let mut err = struct_span_err!(self.session, directive.span, E0365,
+                                                      "`{}` is private, and cannot be reexported",
+                                                      source);
+                     err.span_label(directive.span, &format!("reexport of private `{}`", source));
+                     err.note(&format!("consider declaring type or module `{}` with `pub`", source));
+                     err.emit();
                  }
              }