Skip to content

Commit 3709df5

Browse files
committed
add std::exception testcase
1 parent d3ff354 commit 3709df5

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

tests/runner.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3029,6 +3029,28 @@ def test_multiexception(self):
30293029
Exiting setjmp function, level: 0, prev_jmp: -1
30303030
''')
30313031

3032+
def test_std_exception(self):
3033+
if self.emcc_args is None: return self.skip('requires emcc')
3034+
Settings.DISABLE_EXCEPTION_CATCHING = 0
3035+
self.emcc_args += ['-s', 'SAFE_HEAP=0']
3036+
3037+
src = r'''
3038+
#include <stdio.h>
3039+
#include <exception>
3040+
3041+
int main()
3042+
{
3043+
std::exception e;
3044+
try {
3045+
throw e;
3046+
} catch(std::exception e) {
3047+
printf("caught std::exception\n");
3048+
}
3049+
return 0;
3050+
}
3051+
'''
3052+
self.do_run(src, 'caught std::exception')
3053+
30323054
def test_exit_stack(self):
30333055
if self.emcc_args is None: return self.skip('requires emcc')
30343056
if Settings.ASM_JS: return self.skip('uses report_stack without exporting')

0 commit comments

Comments
 (0)