added python test case li_std_except_as_class for SF bug 1295
This commit is contained in:
parent
3e2c6bb03d
commit
da00bdb12d
3 changed files with 29 additions and 0 deletions
|
|
@ -480,6 +480,7 @@ CPP_STD_TEST_CASES += \
|
||||||
li_std_combinations \
|
li_std_combinations \
|
||||||
li_std_deque \
|
li_std_deque \
|
||||||
li_std_except \
|
li_std_except \
|
||||||
|
li_std_except_as_class \
|
||||||
li_std_map \
|
li_std_map \
|
||||||
li_std_pair \
|
li_std_pair \
|
||||||
li_std_pair_using \
|
li_std_pair_using \
|
||||||
|
|
|
||||||
19
Examples/test-suite/li_std_except_as_class.i
Normal file
19
Examples/test-suite/li_std_except_as_class.i
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
/* File : li_std_except_as_class.i */
|
||||||
|
%module li_std_except_as_class
|
||||||
|
|
||||||
|
/* NOTE: SF bug 1295:
|
||||||
|
* if there were also functions throwing 'std::logic_error' and
|
||||||
|
* 'std::exception' then the bug would not be fully replicated */
|
||||||
|
|
||||||
|
%{
|
||||||
|
#include <exception>
|
||||||
|
#include <stdexcept>
|
||||||
|
void test_domain_error() throw(std::domain_error)
|
||||||
|
{ throw std::domain_error("std::domain_error"); }
|
||||||
|
%}
|
||||||
|
|
||||||
|
%include <std_string.i>
|
||||||
|
#define SWIG_STD_EXCEPTIONS_AS_CLASSES
|
||||||
|
%include <std_except.i>
|
||||||
|
void test_domain_error() throw(std::domain_error)
|
||||||
|
{ throw std::domain_error("std::domain_error"); }
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
from li_std_except_as_class import *
|
||||||
|
|
||||||
|
# std::domain_error hierarchy
|
||||||
|
try: test_domain_error()
|
||||||
|
except domain_error: pass
|
||||||
|
try: test_domain_error()
|
||||||
|
except logic_error: pass
|
||||||
|
try: test_domain_error()
|
||||||
|
except exception: pass
|
||||||
Loading…
Add table
Add a link
Reference in a new issue