summaryrefslogtreecommitdiffstats
path: root/tests/codegen-units/item-collection/cross-crate-generic-functions.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/codegen-units/item-collection/cross-crate-generic-functions.rs')
-rw-r--r--tests/codegen-units/item-collection/cross-crate-generic-functions.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/codegen-units/item-collection/cross-crate-generic-functions.rs b/tests/codegen-units/item-collection/cross-crate-generic-functions.rs
new file mode 100644
index 000000000..7289ceee9
--- /dev/null
+++ b/tests/codegen-units/item-collection/cross-crate-generic-functions.rs
@@ -0,0 +1,24 @@
+// compile-flags:-Zprint-mono-items=eager
+
+#![deny(dead_code)]
+#![feature(start)]
+
+// aux-build:cgu_generic_function.rs
+extern crate cgu_generic_function;
+
+//~ MONO_ITEM fn start
+#[start]
+fn start(_: isize, _: *const *const u8) -> isize {
+ //~ MONO_ITEM fn cgu_generic_function::bar::<u32>
+ //~ MONO_ITEM fn cgu_generic_function::foo::<u32>
+ let _ = cgu_generic_function::foo(1u32);
+
+ //~ MONO_ITEM fn cgu_generic_function::bar::<u64>
+ //~ MONO_ITEM fn cgu_generic_function::foo::<u64>
+ let _ = cgu_generic_function::foo(2u64);
+
+ // This should not introduce a codegen item
+ let _ = cgu_generic_function::exported_but_not_generic(3);
+
+ 0
+}