fix vec-box-size-threshold
off-by-one error
This commit is contained in:
parent
a5995279fb
commit
b8357ffd1f
@ -42,7 +42,7 @@ pub(super) fn check(
|
||||
if !ty_ty.has_escaping_bound_vars();
|
||||
if ty_ty.is_sized(cx.tcx.at(ty.span), cx.param_env);
|
||||
if let Ok(ty_ty_size) = cx.layout_of(ty_ty).map(|l| l.size.bytes());
|
||||
if ty_ty_size <= box_size_threshold;
|
||||
if ty_ty_size < box_size_threshold;
|
||||
then {
|
||||
span_lint_and_sugg(
|
||||
cx,
|
||||
|
@ -7,8 +7,9 @@ struct C {
|
||||
}
|
||||
|
||||
struct Foo(Vec<Box<u8>>);
|
||||
struct Bar(Vec<Box<u32>>);
|
||||
struct Baz(Vec<Box<(u32, u32)>>);
|
||||
struct Bar(Vec<Box<u16>>);
|
||||
struct Quux(Vec<Box<u32>>);
|
||||
struct Baz(Vec<Box<(u16, u16)>>);
|
||||
struct BarBaz(Vec<Box<S>>);
|
||||
struct FooBarBaz(Vec<Box<C>>);
|
||||
|
||||
|
@ -9,11 +9,11 @@ LL | struct Foo(Vec<Box<u8>>);
|
||||
error: `Vec<T>` is already on the heap, the boxing is unnecessary
|
||||
--> $DIR/test.rs:10:12
|
||||
|
|
||||
LL | struct Bar(Vec<Box<u32>>);
|
||||
| ^^^^^^^^^^^^^ help: try: `Vec<u32>`
|
||||
LL | struct Bar(Vec<Box<u16>>);
|
||||
| ^^^^^^^^^^^^^ help: try: `Vec<u16>`
|
||||
|
||||
error: `Vec<T>` is already on the heap, the boxing is unnecessary
|
||||
--> $DIR/test.rs:13:18
|
||||
--> $DIR/test.rs:14:18
|
||||
|
|
||||
LL | struct FooBarBaz(Vec<Box<C>>);
|
||||
| ^^^^^^^^^^^ help: try: `Vec<C>`
|
||||
|
Loading…
Reference in New Issue
Block a user