diff options
author | Andrew Pinski <pinskia@gcc.gnu.org> | 2004-10-06 15:09:25 -0700 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2004-10-06 15:09:25 -0700 |
commit | 564060c32aba5494ae02d37a7f005798bb646011 (patch) | |
tree | f69aafaa7090073f1025eee854d0ae5fdd52b317 | |
parent | df7d2d8064462dd97080d05df30063808203b70a (diff) | |
download | gcc-564060c32aba5494ae02d37a7f005798bb646011.zip gcc-564060c32aba5494ae02d37a7f005798bb646011.tar.gz gcc-564060c32aba5494ae02d37a7f005798bb646011.tar.bz2 |
[multiple changes]
2004-10-05 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/17368
* semantics.c (finish_asm_stmt): Asm expressions need cleanup
also.
2004-10-06 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/17368
* g++.dg/ext/asm6.C: New test.
From-SVN: r88627
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/semantics.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/ext/asm6.C | 11 |
4 files changed, 24 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 13117b8..20a6a2d 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2004-10-05 Andrew Pinski <pinskia@physics.uc.edu> + + PR c++/17368 + * semantics.c (finish_asm_stmt): Asm expressions need cleanup + also. + 2004-10-05 Gabriel Dos Reis <gdr@integrable-solutions.net> Convert diagnostics to use quoting flag q 6/n diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 5bb6f3b..78d2683 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -1178,6 +1178,7 @@ finish_asm_stmt (int volatile_p, tree string, tree output_operands, output_operands, input_operands, clobbers); ASM_VOLATILE_P (r) = volatile_p; + r = maybe_cleanup_point_expr (r); return add_stmt (r); } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f684e7f..8e23309 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,6 +1,11 @@ +2004-10-06 Andrew Pinski <pinskia@physics.uc.edu> + + PR c++/17368 + * g++.dg/ext/asm6.C: New test. + 2004-10-06 Kenneth Zadeck <zadeck@naturalbridge.com> - gcc.dg/20011119-1.c : Added memory attribute to asm sequence. + * gcc.dg/20011119-1.c : Added memory attribute to asm sequence. 2004-10-06 Paul Brook <paul@codesourcery.com> diff --git a/gcc/testsuite/g++.dg/ext/asm6.C b/gcc/testsuite/g++.dg/ext/asm6.C new file mode 100644 index 0000000..eaf79f4 --- /dev/null +++ b/gcc/testsuite/g++.dg/ext/asm6.C @@ -0,0 +1,11 @@ +struct A +{ + ~A(); +}; +int foo(A); +void bar() +{ + A a; + asm("" : : "r"(foo(a)) );//<-- cleanup needed here. +}; + |