From 116f09e7e986a21af5a28f15ce601c338dfc818c Mon Sep 17 00:00:00 2001 From: Michael Chastain Date: Thu, 1 Jan 2004 23:05:12 +0000 Subject: [PATCH] 2004-01-01 Michael Chastain * gdb.cp/virtfunc.exp: Modify some patterns to avoid a mysterious bug with sourceware version of expect. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.cp/virtfunc.exp | 14 +++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index f19c39f..3e95151 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2004-01-01 Michael Chastain + * gdb.cp/virtfunc.exp: Modify some patterns to avoid a + mysterious bug with sourceware version of expect. + +2004-01-01 Michael Chastain + * gdb.cp/overload.exp: Rewrite. Clean up patterns to match current versions of gcc, including gcc abi 2. Remove gratuitous restart of test program. Use gdb_test_multiple and gdb_test for diff --git a/gdb/testsuite/gdb.cp/virtfunc.exp b/gdb/testsuite/gdb.cp/virtfunc.exp index 0f90adf..5b5a85f 100644 --- a/gdb/testsuite/gdb.cp/virtfunc.exp +++ b/gdb/testsuite/gdb.cp/virtfunc.exp @@ -1,4 +1,4 @@ -# Copyright 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003 +# Copyright 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify @@ -330,14 +330,22 @@ proc test_ptype_of_classes {} { } # class D + # + # I wrote this differently from the others to avoid a problem with + # the sourceware version of expect, which dates from 1998. + # The bug manifests as ERROR/UNRESOLVED results after an "eof" + # in gdb_test_multiple. + # + # -- chastain 2004-01-01 set re_class "class D : public AD, public virtual V \{(${ws}private:|)" set re_vbptr "V \\*(_vb.1V|_vb.V);" set re_fields "int d;" - set re_methods "static void s\\((void|)\\);${ws}virtual int vg\\((void|)\\);${ws}virtual int vd\\((void|)\\);${ws}int fd\\((void|)\\);" + set re_methods_2 "static void s\\(void\\);${ws}virtual int vg\\(void\\);${ws}virtual int vd\\(void\\);${ws}int fd\\(void\\);" + set re_methods_3 "static void s\\(\\);${ws}virtual int vg\\(\\);${ws}virtual int vd\\(\\);${ws}int fd\\(\\);" set re_synth_gcc_2 "D & operator=\\(D const ?&\\);${ws}D\\(int, D const ?&\\);${ws}D\\(int\\);" set re_synth_gcc_3 "D & operator=\\(D const ?&\\);${ws}D\\(D const ?&\\);${ws}D\\(\\);" - set re_all_methods "($re_methods|$re_synth_gcc_2${ws}$re_methods|$re_synth_gcc_3${ws}$re_methods|$re_methods${ws}$re_synth_gcc_3)" + set re_all_methods "($re_methods_2|$re_methods_3|$re_synth_gcc_2${ws}$re_methods_2|$re_synth_gcc_3${ws}$re_methods_3|$re_methods${ws}$re_synth_gcc_3)" gdb_test_multiple "ptype D" "ptype D" { -re "type = ${re_class}${ws}(${re_vbptr}${ws}|)public:${ws}${re_fields}${ws}${re_all_methods}$nl\}$nl$gdb_prompt $" { -- 2.7.4