summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/expectations/struct_with_typedef_template_arg.rs15
-rw-r--r--tests/headers/struct_with_typedef_template_arg.hpp4
2 files changed, 19 insertions, 0 deletions
diff --git a/tests/expectations/struct_with_typedef_template_arg.rs b/tests/expectations/struct_with_typedef_template_arg.rs
new file mode 100644
index 00000000..6f8d71f1
--- /dev/null
+++ b/tests/expectations/struct_with_typedef_template_arg.rs
@@ -0,0 +1,15 @@
+/* automatically generated by rust-bindgen */
+
+
+#![allow(non_snake_case)]
+
+
+#[repr(C)]
+#[derive(Debug, Copy, Clone)]
+pub struct Proxy<T, Args> {
+ pub _address: u8,
+ pub _phantom_0: ::std::marker::PhantomData<T>,
+ pub _phantom_1: ::std::marker::PhantomData<Args>,
+}
+pub type Proxy_foo<T> =
+ ::std::option::Option<unsafe extern "C" fn(bar: *mut T)>;
diff --git a/tests/headers/struct_with_typedef_template_arg.hpp b/tests/headers/struct_with_typedef_template_arg.hpp
new file mode 100644
index 00000000..7fed21ab
--- /dev/null
+++ b/tests/headers/struct_with_typedef_template_arg.hpp
@@ -0,0 +1,4 @@
+template<typename T, typename ...Args>
+struct Proxy {
+ typedef void (*foo)(T* bar);
+};