Skip to content

Commit 1113ea6

Browse files
Add failing test case for google#1435
1 parent 0889034 commit 1113ea6

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

integration-tests/tests/integration_test.rs

+40
Original file line numberDiff line numberDiff line change
@@ -7686,6 +7686,46 @@ fn test_pv_subclass_const() {
76867686
);
76877687
}
76887688

7689+
#[test]
7690+
fn test_pv_subclass_noexcept() {
7691+
let hdr = indoc! {"
7692+
#include <cstdint>
7693+
7694+
class Observer {
7695+
public:
7696+
Observer() {}
7697+
virtual void foo() noexcept = 0;
7698+
virtual ~Observer() {}
7699+
};
7700+
inline void bar() {}
7701+
"};
7702+
run_test_ex(
7703+
"",
7704+
hdr,
7705+
quote! {
7706+
MyObserver::new_rust_owned(MyObserver { a: 3, cpp_peer: Default::default() });
7707+
},
7708+
quote! {
7709+
generate!("bar")
7710+
subclass!("Observer",MyObserver)
7711+
},
7712+
None,
7713+
None,
7714+
Some(quote! {
7715+
use autocxx::subclass::CppSubclass;
7716+
use ffi::Observer_methods;
7717+
#[autocxx::subclass::subclass]
7718+
pub struct MyObserver {
7719+
a: u32
7720+
}
7721+
impl Observer_methods for MyObserver {
7722+
fn foo(&self) {
7723+
}
7724+
}
7725+
}),
7726+
);
7727+
}
7728+
76897729
#[test]
76907730
fn test_pv_subclass_calls_impossible() {
76917731
let hdr = indoc! {"

0 commit comments

Comments
 (0)