From 0709b7a08d781c487c906da930e660f9c8ecd0cd Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Fri, 28 Oct 2016 01:14:15 +0100 Subject: Fix buffer-full --- gdb/testsuite/gdb.base/maint.exp | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/gdb/testsuite/gdb.base/maint.exp b/gdb/testsuite/gdb.base/maint.exp index e66f5660881..c3ad98e6be1 100644 --- a/gdb/testsuite/gdb.base/maint.exp +++ b/gdb/testsuite/gdb.base/maint.exp @@ -474,9 +474,22 @@ gdb_test "maint" \ "\"maintenance\" must be followed by the name of a maintenance command\\.\r\nList.*unambiguous\\..*" \ "maint w/o args" -gdb_test "maint info line-table" \ - "symtab: \[^\n\r\]+${srcfile}.*\\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX.*LINE.*ADDRESS.*" \ - "maint info line-table w/o a file name" +set saw_symtabs 0 +set test "maint info line-table w/o a file name" +gdb_test_multiple "maint info line-table" $test { + -re "symtab: \[^\n\r\]+${srcfile}.*\\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX.*LINE.*ADDRESS" { + set saw_symtabs 1 + exp_continue + } + -re "$decimal\[ \t\]+$decimal\[ \t\]+$hex\r\n" { + # Line table entries can be big. Match them to avoid + # overflowing expect's buffer. + exp_continue + } + -re "$gdb_prompt $" { + gdb_assert $saw_symtabs $test + } +} gdb_test "maint info line-table ${srcfile}" \ "symtab: \[^\n\r\]+${srcfile}.*INDEX.*LINE.*ADDRESS.*" \ -- cgit v1.2.1