This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [RFA] examine for TYPE_CODE_REF (PR 11349)



> -----Message d'origine-----
> De?: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Tom Tromey
> Envoyé?: Monday, May 03, 2010 7:40 PM
> À?: Pierre Muller
> Cc?: gdb-patches@sourceware.org
> Objet?: Re: [RFA] examine for TYPE_CODE_REF (PR 11349)
> 
> >>>>> "Pierre" == Pierre Muller <pierre.muller@ics-cnrs.unistra.fr>
> writes:
> 
> Pierre> +send_gdb "x /hd rps\n"
> Pierre> +gdb_expect {
> Pierre> +    -re ".* -1.*$gdb_prompt $" {
> Pierre> +        pass "examine value at rps"
> Pierre> +      }
> Pierre> +    -re ".*$gdb_prompt $" { fail "examine value at rps" }
> Pierre> +    timeout           { fail "(timeout) examine value at rps"
> }
> Pierre> +  }
> Pierre> +
> 
> These days we're trying to use gdb_test rather than send_gdb.
> The patch is ok with that change.

  It's just that all the other tests around this one
where also written using gdb_expect, and I simply copy
and adapted one...

  Thanks for the approval,
patch committed
http://sourceware.org/ml/gdb-cvs/2010-05/msg00026.html

Pierre

PS: I had one point for which I was unsure:
I use '/h' modifier which means 16 bit size,
are there any systems for which C type 'short' is not 16 bit in size?
On such systems, the test might fail ...


For the testsuite, this is how I modified it:
Index: testsuite/gdb.cp/ref-types.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.cp/ref-types.exp,v
retrieving revision 1.12
diff -u -p -r1.12 ref-types.exp
--- testsuite/gdb.cp/ref-types.exp	1 Jan 2010 07:32:01 -0000	1.12
+++ testsuite/gdb.cp/ref-types.exp	4 May 2010 06:47:56 -0000
@@ -200,6 +200,11 @@ gdb_expect {
     timeout           { fail "(timeout) print value of *rps" }
   }
 
+# GDB had a bug about dereferencing a pointer type
+# that would lead to wrong results
+# if we try to examine memory at pointer value.
+
+gdb_test "x /hd rps" "$hex:\[ \t\]*-1" "examine value at rps"
 
 send_gdb "ptype rps\n"
 gdb_expect {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]