>> > 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 00000000000..85034504f2f >> > --- /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 00000000000..7975432597d >> > --- /dev/null >> > +++ b/gcc/testsuite/g++.dg/tree-ssa/pr87502.C >> > @@ -0,0 +1,16 @@ >> > +// { 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. >> > +// { dg-final { scan-tree-dump-not "remove_me" "= 0;" } }
Copy'n paste error