Re: [patch] delete namespace __gnu_test from C++ testsuite

David Carlton
2002-12-18T19:18:41Z

On Wed, 18 Dec 2002 13:00:38 -0600, Michael Elizabeth Chastain <mec@shout.net> said:

> I would change this code:
> # simple object, enum
> gdb_test "print test1.value" "\\$\[0-9\]* = egyptian" "simple object, enum"

> To:

> send_gdb "test1.value\n"
> gdb_expect {
> -re "\\$\[0-9\]+ = __gnu_test::egyptian\r\n$gdb_prompt $" {
> pass "simple object, enum
> }
> -re "\\$\[0-9\]+ = egyptain\r\n$gdb_prompt $" {
> fail "simple object, enum (gdb/895)"
> }
> -re ".*$gdb_prompt $" {
> fail "simple object, enum"
> }
> timeout {
> fail "simple object, enum (timeout)"
> }

I'll add something like this to the testsuite soon. (Hopefully over
the next few days; definitely before Winter quarter starts.)

> In the "= egyptian" case, I would call kfail or setup_kfail as soon
> as we start using KFAIL's. KFAIL is moving way up my priority list.

Yup. I think I'll KFAIL something today; I'm just looking for the
right bug to start with. One possibility is gdb.c++/annota2.exp's
annotate-quit, corresponding to PR 544.

> If the "= egyptian" case is due to bad output from gcc, then I would
> add a big comment and then call setup_xfail (or call xfail outright).
> I would also want to have a gcc bug # in hand and refer to it in
> the test script source.

We can't get it right without GCC's help. But currently we wouldn't
get it right even if GCC were helping, so I think that KFAIL is
appropriate for now.

Getting this completely correct is going to be a bit of a delicate
issue, actually: eventually, we'll need to be able to conditially
XFAIL tests based on the compiler version number, if we really want to
be scrupulously correct in this regard.