2018-10-06 16:18:06 +00:00
|
|
|
|
// Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
|
|
|
|
|
// file at the top-level directory of this distribution.
|
|
|
|
|
//
|
|
|
|
|
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
|
|
|
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
|
|
|
|
// option. This file may not be copied, modified, or distributed
|
|
|
|
|
// except according to those terms.
|
|
|
|
|
|
|
|
|
|
|
2018-07-28 15:34:52 +00:00
|
|
|
|
#![feature(tool_lints)]
|
|
|
|
|
|
2018-05-11 11:20:39 +00:00
|
|
|
|
#![feature(alloc)]
|
2016-12-21 14:42:20 +00:00
|
|
|
|
#![feature(associated_type_defaults)]
|
2014-11-20 07:07:45 +00:00
|
|
|
|
|
2017-09-18 10:47:33 +00:00
|
|
|
|
|
2018-07-28 15:34:52 +00:00
|
|
|
|
#![warn(clippy::linkedlist)]
|
|
|
|
|
#![allow(dead_code, clippy::needless_pass_by_value)]
|
2015-01-10 06:26:58 +00:00
|
|
|
|
|
2017-06-16 03:30:55 +00:00
|
|
|
|
extern crate alloc;
|
2018-07-01 11:36:14 +00:00
|
|
|
|
use alloc::collections::linked_list::LinkedList;
|
2014-11-20 07:07:45 +00:00
|
|
|
|
|
2016-12-21 14:42:20 +00:00
|
|
|
|
trait Foo {
|
2017-02-08 13:58:07 +00:00
|
|
|
|
type Baz = LinkedList<u8>;
|
|
|
|
|
fn foo(LinkedList<u8>);
|
|
|
|
|
const BAR : Option<LinkedList<u8>>;
|
2016-12-21 14:42:20 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ok, we don’t want to warn for implementations, see #605
|
|
|
|
|
impl Foo for LinkedList<u8> {
|
|
|
|
|
fn foo(_: LinkedList<u8>) {}
|
|
|
|
|
const BAR : Option<LinkedList<u8>> = None;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct Bar;
|
|
|
|
|
impl Bar {
|
2017-02-08 13:58:07 +00:00
|
|
|
|
fn foo(_: LinkedList<u8>) {}
|
2016-12-21 14:42:20 +00:00
|
|
|
|
}
|
|
|
|
|
|
2017-02-08 13:58:07 +00:00
|
|
|
|
pub fn test(my_favourite_linked_list: LinkedList<u8>) {
|
2016-12-21 14:42:20 +00:00
|
|
|
|
println!("{:?}", my_favourite_linked_list)
|
|
|
|
|
}
|
|
|
|
|
|
2017-02-08 13:58:07 +00:00
|
|
|
|
pub fn test_ret() -> Option<LinkedList<u8>> {
|
2016-12-21 14:42:20 +00:00
|
|
|
|
unimplemented!();
|
2014-11-20 07:07:45 +00:00
|
|
|
|
}
|
|
|
|
|
|
2017-06-11 16:30:48 +00:00
|
|
|
|
pub fn test_local_not_linted() {
|
|
|
|
|
let _: LinkedList<u8>;
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-20 07:07:45 +00:00
|
|
|
|
fn main(){
|
2016-12-21 14:42:20 +00:00
|
|
|
|
test(LinkedList::new());
|
2017-06-11 16:30:48 +00:00
|
|
|
|
test_local_not_linted();
|
2015-08-21 16:40:36 +00:00
|
|
|
|
}
|