diff options
author | Jakub Jelinek <jakub@gcc.gnu.org> | 2008-12-29 19:25:19 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2008-12-29 19:25:19 +0100 |
commit | 04be6ff5a8e2709d4b474375a65c0868258abdcd (patch) | |
tree | d72f82cac0cb96faec875085d1d3a9b6077f8ae7 /gcc/testsuite/g++.dg | |
parent | 67d0afe9011dfe0e010113694e4577451855075a (diff) | |
download | gcc-04be6ff5a8e2709d4b474375a65c0868258abdcd.zip gcc-04be6ff5a8e2709d4b474375a65c0868258abdcd.tar.gz gcc-04be6ff5a8e2709d4b474375a65c0868258abdcd.tar.bz2 |
re PR middle-end/36191 (can't use complex in a eh region if non-call-exceptions is enabled)
PR c++/36191
* tree-complex.c (expand_complex_libcall): Call
maybe_clean_or_replace_eh_stmt and gimple_purge_dead_eh_edges
instead of passing true as 3rd argument to gsi_replace.
* g++.dg/torture/pr36191.C: New test.
From-SVN: r142950
Diffstat (limited to 'gcc/testsuite/g++.dg')
-rw-r--r-- | gcc/testsuite/g++.dg/torture/pr36191.C | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/torture/pr36191.C b/gcc/testsuite/g++.dg/torture/pr36191.C new file mode 100644 index 0000000..18051ce --- /dev/null +++ b/gcc/testsuite/g++.dg/torture/pr36191.C @@ -0,0 +1,16 @@ +// PR c++/36191 +// { dg-do compile } +// { dg-options "-fnon-call-exceptions" } + +__complex__ double +foo (__complex__ double x, double y) +{ + try + { + return x / y; + } + catch (char *s) + { + return x; + } +} |