The drop_ref test does not require implementing the Drop trait.
This commit is contained in:
parent
f145fc44f8
commit
920a2b7468
@ -6,26 +6,25 @@
|
||||
|
||||
use std::mem::drop;
|
||||
|
||||
struct DroppableStruct;
|
||||
impl Drop for DroppableStruct { fn drop(&mut self) {} }
|
||||
struct SomeStruct;
|
||||
|
||||
fn main() {
|
||||
drop(&DroppableStruct); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(&SomeStruct); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
|
||||
let mut owned = DroppableStruct;
|
||||
let mut owned = SomeStruct;
|
||||
drop(&owned); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(&&owned); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(&mut owned); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(owned); //OK
|
||||
|
||||
let reference1 = &DroppableStruct;
|
||||
let reference1 = &SomeStruct;
|
||||
drop(reference1); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(&*reference1); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
|
||||
let reference2 = &mut DroppableStruct;
|
||||
let reference2 = &mut SomeStruct;
|
||||
drop(reference2); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
|
||||
let ref reference3 = DroppableStruct;
|
||||
let ref reference3 = SomeStruct;
|
||||
drop(reference3); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
}
|
||||
|
||||
@ -38,6 +37,6 @@ fn test_generic_fn<T>(val: T) {
|
||||
#[allow(dead_code)]
|
||||
fn test_similarly_named_function() {
|
||||
fn drop<T>(_val: T) {}
|
||||
drop(&DroppableStruct); //OK; call to unrelated function which happens to have the same name
|
||||
std::mem::drop(&DroppableStruct); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
drop(&SomeStruct); //OK; call to unrelated function which happens to have the same name
|
||||
std::mem::drop(&SomeStruct); //~ERROR call to `std::mem::drop` with a reference argument
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user