summaryrefslogtreecommitdiff
path: root/libbindgen/tests
diff options
context:
space:
mode:
Diffstat (limited to 'libbindgen/tests')
-rw-r--r--libbindgen/tests/expectations/tests/auto.rs12
-rw-r--r--libbindgen/tests/headers/auto.hpp17
2 files changed, 26 insertions, 3 deletions
diff --git a/libbindgen/tests/expectations/tests/auto.rs b/libbindgen/tests/expectations/tests/auto.rs
index e35f5ed2..6224e807 100644
--- a/libbindgen/tests/expectations/tests/auto.rs
+++ b/libbindgen/tests/expectations/tests/auto.rs
@@ -9,7 +9,7 @@
pub struct Foo {
pub _address: u8,
}
-pub const Foo_kBar: bool = true;
+pub const Foo_kFoo: bool = true;
#[test]
fn bindgen_test_layout_Foo() {
assert_eq!(::std::mem::size_of::<Foo>() , 1usize);
@@ -18,3 +18,13 @@ fn bindgen_test_layout_Foo() {
impl Clone for Foo {
fn clone(&self) -> Self { *self }
}
+#[repr(C)]
+#[derive(Debug, Copy, Clone)]
+pub struct Bar<T> {
+ pub _address: u8,
+ pub _phantom_0: ::std::marker::PhantomData<T>,
+}
+extern "C" {
+ #[link_name = "_Z5Test2v"]
+ pub fn Test2() -> ::std::os::raw::c_uint;
+}
diff --git a/libbindgen/tests/headers/auto.hpp b/libbindgen/tests/headers/auto.hpp
index 64025295..b5f6d5f3 100644
--- a/libbindgen/tests/headers/auto.hpp
+++ b/libbindgen/tests/headers/auto.hpp
@@ -1,6 +1,19 @@
-// bindgen-flags: -- -std=c++11
+// bindgen-flags: -- -std=c++14
// bindgen-unstable
class Foo {
- static constexpr auto kBar = 2 == 2;
+ static constexpr auto kFoo = 2 == 2;
};
+
+template<typename T>
+class Bar {
+ static const constexpr auto kBar = T(1);
+};
+
+template<typename T> auto Test1() {
+ return T(1);
+}
+
+auto Test2() {
+ return Test1<unsigned int>();
+}