diff options
author | fche <fche> | 2005-09-13 00:45:24 +0000 |
---|---|---|
committer | fche <fche> | 2005-09-13 00:45:24 +0000 |
commit | bf9bd203c3acd94614b93ba0187148a1deda043c (patch) | |
tree | 1e88f3c68ba79782aa432a58be6ea27e452982da | |
parent | 897820ca8cf35d061f366704dd9b0a7981793190 (diff) | |
download | systemtap-steved-bf9bd203c3acd94614b93ba0187148a1deda043c.tar.gz systemtap-steved-bf9bd203c3acd94614b93ba0187148a1deda043c.tar.xz systemtap-steved-bf9bd203c3acd94614b93ba0187148a1deda043c.zip |
2005-09-12 Frank Ch. Eigler <fche@elastic.org>
PR 1335
* translate.cxx (c_tmpcounter::visit_functioncall): Correct
recursion sequence.
* testsuite/buildok/nineteen.stp: New test case.
-rw-r--r-- | ChangeLog | 7 | ||||
-rwxr-xr-x | testsuite/buildok/nineteen.stp | 21 | ||||
-rw-r--r-- | translate.cxx | 4 |
3 files changed, 29 insertions, 3 deletions
@@ -1,3 +1,10 @@ +2005-09-12 Frank Ch. Eigler <fche@elastic.org> + + PR 1335 + * translate.cxx (c_tmpcounter::visit_functioncall): Correct + recursion sequence. + * testsuite/buildok/nineteen.stp: New test case. + 2005-09-12 Graydon Hoare <graydon@redhat.com> PR 1306 diff --git a/testsuite/buildok/nineteen.stp b/testsuite/buildok/nineteen.stp new file mode 100755 index 00000000..be12b6f7 --- /dev/null +++ b/testsuite/buildok/nineteen.stp @@ -0,0 +1,21 @@ +#! stap -p4 + +function msg1 (x) { + log(x) +} +function msg2 (x,y) { + log(x." ".y) +} + +probe begin { + msg1("55"); + msg1(string(55)) + + msg2("100", "GOOD") + msg2("GOOD", string(100)) + +# the next line caused a compile failure when uncommented; PR 1335 + msg2(string(100), "GOOD") + + exit() +} diff --git a/translate.cxx b/translate.cxx index 6b00cd9e..9f057043 100644 --- a/translate.cxx +++ b/translate.cxx @@ -2259,10 +2259,8 @@ c_tmpcounter::visit_functioncall (functioncall *e) { tmpvar t = parent->gensym (r->formal_args[i]->type); t.declare (*parent); + e->args[i]->visit (this); } - - for (unsigned i=0; i<e->args.size(); i++) - e->args[i]->visit (this); } |