Updated E0071 to new format.
The span underlines only the name of the thing that's not a struct rather than the whole expression.
This commit is contained in:
parent
40f3ee2a01
commit
7c58b26f70
@ -3147,9 +3147,12 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
||||
};
|
||||
if variant.is_none() || variant.unwrap().kind == ty::VariantKind::Tuple {
|
||||
// Reject tuple structs for now, braced and unit structs are allowed.
|
||||
span_err!(self.tcx.sess, span, E0071,
|
||||
"`{}` does not name a struct or a struct variant",
|
||||
pprust::path_to_string(path));
|
||||
struct_span_err!(self.tcx.sess, path.span, E0071,
|
||||
"`{}` does not name a struct or a struct variant",
|
||||
pprust::path_to_string(path))
|
||||
.span_label(path.span, &format!("not a struct"))
|
||||
.emit();
|
||||
|
||||
return None;
|
||||
}
|
||||
|
||||
|
@ -11,6 +11,11 @@
|
||||
enum Foo { FirstValue(i32) }
|
||||
|
||||
fn main() {
|
||||
let u = Foo::FirstValue { value: 0 }; //~ ERROR E0071
|
||||
let t = u32 { value: 4 }; //~ ERROR E0071
|
||||
let u = Foo::FirstValue { value: 0 };
|
||||
//~^ ERROR `Foo::FirstValue` does not name a struct or a struct variant [E0071]
|
||||
//~| NOTE not a struct
|
||||
|
||||
let t = u32 { value: 4 };
|
||||
//~^ ERROR `u32` does not name a struct or a struct variant [E0071]
|
||||
//~| NOTE not a struct
|
||||
}
|
||||
|
@ -13,4 +13,5 @@ trait TraitNotAStruct {}
|
||||
fn main() {
|
||||
TraitNotAStruct{ value: 0 };
|
||||
//~^ ERROR: `TraitNotAStruct` does not name a struct or a struct variant [E0071]
|
||||
//~| NOTE not a struct
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user