File tree 1 file changed +40
-0
lines changed
1 file changed +40
-0
lines changed Original file line number Diff line number Diff line change @@ -7686,6 +7686,46 @@ fn test_pv_subclass_const() {
7686
7686
) ;
7687
7687
}
7688
7688
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
+
7689
7729
#[ test]
7690
7730
fn test_pv_subclass_calls_impossible ( ) {
7691
7731
let hdr = indoc ! { "
You can’t perform that action at this time.
0 commit comments