diff options
Diffstat (limited to 'tests/ui/structs-enums/class-cast-to-trait-cross-crate-2.rs')
-rw-r--r-- | tests/ui/structs-enums/class-cast-to-trait-cross-crate-2.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/ui/structs-enums/class-cast-to-trait-cross-crate-2.rs b/tests/ui/structs-enums/class-cast-to-trait-cross-crate-2.rs new file mode 100644 index 000000000..f870096fd --- /dev/null +++ b/tests/ui/structs-enums/class-cast-to-trait-cross-crate-2.rs @@ -0,0 +1,18 @@ +// run-pass +// aux-build:cci_class_cast.rs + +extern crate cci_class_cast; + +use std::string::ToString; +use cci_class_cast::kitty::cat; + +fn print_out(thing: Box<dyn ToString>, expected: String) { + let actual = (*thing).to_string(); + println!("{}", actual); + assert_eq!(actual.to_string(), expected); +} + +pub fn main() { + let nyan: Box<dyn ToString> = Box::new(cat(0, 2, "nyan".to_string())) as Box<dyn ToString>; + print_out(nyan, "nyan".to_string()); +} |