Skip to content

Commit

Permalink
fix mispositioned span
Browse files Browse the repository at this point in the history
  • Loading branch information
gaurikholkar committed Jan 13, 2018
1 parent 73ac5d6 commit 4cedbfc
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 67 deletions.
2 changes: 1 addition & 1 deletion src/librustc_errors/emitter.rs
Expand Up @@ -1187,7 +1187,7 @@ impl EmitterWriter {
let sub_len = parts[0].snippet.trim().chars().fold(0, |acc, ch| {
acc + unicode_width::UnicodeWidthChar::width(ch).unwrap_or(0)
});
let underline_start = span_start_pos.col.0 + start;
let underline_start = span_start_pos.col_display + start;
let underline_end = span_start_pos.col.0 + start + sub_len;
for p in underline_start..underline_end {
buffer.putc(row_num,
Expand Down
67 changes: 1 addition & 66 deletions src/test/ui/lint/use_suggestion_json.stderr
Expand Up @@ -2,72 +2,7 @@
"message": "cannot find type `Iter` in this scope",
"code": {
"code": "E0412",
"explanation": "
The type name used is not in scope.

Erroneous code examples:

```compile_fail,E0412
impl Something {} // error: type name `Something` is not in scope

// or:

trait Foo {
fn bar(N); // error: type name `N` is not in scope
}

// or:

fn foo(x: T) {} // type name `T` is not in scope
```

To fix this error, please verify you didn't misspell the type name, you did
declare it or imported it into the scope. Examples:

```
struct Something;

impl Something {} // ok!

// or:

trait Foo {
type N;

fn bar(_: Self::N); // ok!
}

// or:

fn foo<T>(x: T) {} // ok!
```

Another case that causes this error is when a type is imported into a parent
module. To fix this, you can follow the suggestion and use File directly or
`use super::File;` which will import the types from the parent namespace. An
example that causes this error is below:

```compile_fail,E0412
use std::fs::File;

mod foo {
fn some_function(f: File) {}
}
```

```
use std::fs::File;

mod foo {
// either
use super::File;
// or
// use std::fs::File;
fn foo(f: File) {}
}
# fn main() {} // don't insert it for us; that'll break imports
```
"
"explanation": null
},
"level": "error",
"spans": [
Expand Down

0 comments on commit 4cedbfc

Please sign in to comment.