From 36c6e0966e7d1a903df7dc1d37fea9178db5b453 Mon Sep 17 00:00:00 2001 From: jimb Date: Thu, 21 Feb 2002 20:58:22 +0000 Subject: [PATCH] * gdb.asm/asm-source.exp: Parse the output from `info sources' one filename at a time, and watch for the ones we want to see. --- gdb/testsuite/ChangeLog | 3 +++ gdb/testsuite/gdb.asm/asm-source.exp | 35 +++++++++++++++++++++++++++++++---- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 645e78b390..f0e4d73410 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,8 @@ 2002-02-21 Jim Blandy + * gdb.asm/asm-source.exp: Parse the output from `info sources' one + filename at a time, and watch for the ones we want to see. + * gdb.base/ptype.exp, gdb.base/ptype.c: Add tests for printing types of pointers to prototyped functions. diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp index fbcfa7cff5..471b31a6df 100644 --- a/gdb/testsuite/gdb.asm/asm-source.exp +++ b/gdb/testsuite/gdb.asm/asm-source.exp @@ -202,10 +202,37 @@ gdb_test "info source" \ "Current source file is .*asmsrc2.s.*Source language is asm.*" \ "info source asmsrc2.s" -# Try 'info sources' -gdb_test "info sources" \ - "Source files .*asmsrc\[12\].s.*asmsrc\[12\].s.*" \ - "info sources" +# Try 'info sources'. This can produce a lot of output on systems +# with dynamic linking, where the system's shared libc was compiled +# with debugging info; for example, on Linux, this produces 47kb of +# output. So we consume it as we go. +send_gdb "info sources\n" +set seen_asmsrc_1 0 +set seen_asmsrc_2 0 +gdb_expect { + -re "^\[^,\]*asmsrc1.s(, |\[\r\n\]+)" { + set seen_asmsrc_1 1 + exp_continue + } + -re "^\[^,\]*asmsrc2.s(, |\[\r\n\]+)" { + set seen_asmsrc_2 1 + exp_continue + } + -re ", " { + exp_continue + } + -re "$gdb_prompt $" { + if {$seen_asmsrc_1 && $seen_asmsrc_2} { + pass "info sources" + } else { + fail "info sources" + } + } + timeout { + fail "info sources (timeout)" + } +} + # Try 'info line' gdb_test "info line" \ -- 2.11.0