diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/g++.dg/tree-ssa/pr80331.C | 8 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/tree-ssa/pr87502.C | 15 |
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr80331.C b/gcc/testsuite/g++.dg/tree-ssa/pr80331.C new file mode 100644 index 0000000..8503450 --- /dev/null +++ b/gcc/testsuite/g++.dg/tree-ssa/pr80331.C @@ -0,0 +1,8 @@ +// { dg-do compile } +// { dg-additional-options "-O2 -fdump-tree-optimized" } +#include<string> +int sain() { + const std::string remove_me("remove_me"); + return 0; +} +// { dg-final { scan-tree-dump-not "remove_me" "optimized" } } diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr87502.C b/gcc/testsuite/g++.dg/tree-ssa/pr87502.C new file mode 100644 index 0000000..ad3e9d2 --- /dev/null +++ b/gcc/testsuite/g++.dg/tree-ssa/pr87502.C @@ -0,0 +1,15 @@ +// { dg-do compile } +// { dg-additional-options "-O2 -fdump-tree-optimized" } +#include <string> + + +__attribute__ ((pure)) +extern int foo (const std::string &); + +int +bar () +{ + return foo ("abc") + foo (std::string("abc")); +} +// We used to add terminating zero explicitely instead of using fact +// that memcpy source is already 0 terminated. |