bedbad6119
Rustc explain Fixes #48041. To make the review easier, I separated tests update to code update. Also, I used this script to generate new ui tests stderr: ```python from os import listdir from os.path import isdir, isfile, join PATH = "src/test/ui" def do_something(path): files = [join(path, f) for f in listdir(path)] for f in files: if isdir(f): do_something(f) continue if not isfile(f) or not f.endswith(".stderr"): continue x = open(f, "r") content = x.read().strip() if "error[E" not in content: continue errors = dict() for y in content.splitlines(): if y.startswith("error[E"): errors[y[6:11]] = True errors = sorted(errors.keys()) if len(errors) < 1: print("weird... {}".format(f)) continue if len(errors) > 1: content += "\n\nYou've got a few errors: {}".format(", ".join(errors)) content += "\nIf you want more information on an error, try using \"rustc --explain {}\"".format(errors[0]) else: content += "\n\nIf you want more information on this error, try using \"rustc --explain {}\"".format(errors[0]) content += "\n" x = open(f, "w") x.write(content) do_something(PATH) ```
12 lines
341 B
Plaintext
12 lines
341 B
Plaintext
error[E0560]: struct `BuildData` has no field named `bar`
|
|
--> $DIR/struct-fields-too-many.rs:18:9
|
|
|
|
|
18 | bar: 0
|
|
| ^^^ `BuildData` does not have this field
|
|
|
|
|
= note: available fields are: `foo`
|
|
|
|
error: aborting due to previous error
|
|
|
|
If you want more information on this error, try using "rustc --explain E0560"
|