diff --git a/testsuite/ltrace.main/dwarf.exp b/testsuite/ltrace.main/dwarf.exp index 7af7d99..faa6d39 100644 --- a/testsuite/ltrace.main/dwarf.exp +++ b/testsuite/ltrace.main/dwarf.exp @@ -56,10 +56,10 @@ set ltrace_opts_l {"-A5" "-l" "libdwarftest.so"} set ref_output_l [subst -nocommands -novariables { dwarf->linkedlisttest({ 5, nil }) * = dwarf->treetest({ 1, { 2, nil, nil }, { 3, nil, { 4, nil, nil } } } -libdwarftest.so->treetest({ 2, nil, nil }) * = nil +libdwarftest.so->treetest({ 2, nil, nil }) * = { 3, nil, nil } libdwarftest.so->treetest({ 3, nil, { 4, nil, nil } } -libdwarftest.so->treetest({ 4, nil, nil }) * = nil -<... treetest resumed> ) * = { 5, nil, nil } +libdwarftest.so->treetest({ 4, nil, nil }) * = { 5, nil, nil } +<... treetest resumed> ) * = { 4, nil, { 5, nil, nil } } <... treetest resumed> ) * = { 2, { 3, nil, nil }, { 4, nil, { 5, nil, nil } } } dwarf->looptest({ { recurse^, 6 }, 5 }) * = dwarf->enumtest(A, B) * = 0 @@ -84,14 +84,14 @@ libdwarftest.so->f55(Colors5)(RED5) * = RED5 } ] run_dwarf_test $ref_output_demangling $ltrace_opts_demangling -set ltrace_opts_x {"-A5" "-L" "-x" "@libdwarftest.so"} +set ltrace_opts_x {"-A5" "-L" "-x" "*test*@libdwarftest.so" "-x" "*Color*@libdwarftest.so" "-x" "*void*@libdwarftest.so"} set ref_output_x [subst -nocommands -novariables { linkedlisttest@libdwarftest.so({ 5, nil }) * = treetest@libdwarftest.so({ 1, { 2, nil, nil }, { 3, nil, { 4, nil, nil } } } -treetest@libdwarftest.so({ 2, nil, nil }) * = nil +treetest@libdwarftest.so({ 2, nil, nil }) * = { 3, nil, nil } treetest@libdwarftest.so({ 3, nil, { 4, nil, nil } } -treetest@libdwarftest.so({ 4, nil, nil }) * = nil -<... treetest resumed> ) * = { 5, nil, nil } +treetest@libdwarftest.so({ 4, nil, nil }) * = { 5, nil, nil } +<... treetest resumed> ) * = { 4, nil, { 5, nil, nil } } <... treetest resumed> ) * = { 2, { 3, nil, nil }, { 4, nil, { 5, nil, nil } } } looptest@libdwarftest.so({ { recurse^, 6 }, 5 }) * = enumtest@libdwarftest.so(A, B) * = 0 @@ -110,10 +110,10 @@ run_dwarf_test $ref_output_x $ltrace_opts_x set ltrace_opts_e {"-A5" "-e" "@libdwarftest.so"} set ref_output_e [subst -nocommands -novariables { -libdwarftest.so->treetest({ 2, nil, nil }) * = nil +libdwarftest.so->treetest({ 2, nil, nil }) * = { 3, nil, nil } libdwarftest.so->treetest({ 3, nil, { 4, nil, nil } } -libdwarftest.so->treetest({ 4, nil, nil }) * = nil -<... treetest resumed> ) * = { 5, nil, nil } +libdwarftest.so->treetest({ 4, nil, nil }) * = { 5, nil, nil } +<... treetest resumed> ) * = { 4, nil, { 5, nil, nil } } libdwarftest.so->_Z3f127Colors2(GREEN2) * = RED1 libdwarftest.so->_Z3f347Colors4(BLUE4) * = RED3 libdwarftest.so->_Z3f557Colors5(RED5) * = RED5 diff --git a/testsuite/ltrace.main/dwarflib.c b/testsuite/ltrace.main/dwarflib.c index 2402400..85b171e 100644 --- a/testsuite/ltrace.main/dwarflib.c +++ b/testsuite/ltrace.main/dwarflib.c @@ -24,8 +24,8 @@ void linkedlisttest( struct list* l ) struct tree treetest(struct tree* t) { - if(t->left != NULL) treetest(t->left); - if(t->right != NULL) treetest(t->right); + if(t->left != NULL) printf("%d",treetest(t->left).x); + if(t->right != NULL) printf("%d",treetest(t->right).x); t->x++; return *t;