diff options
author | Daniel Jacobowitz <drow@false.org> | 2006-07-20 22:50:07 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2006-07-20 22:50:07 +0000 |
commit | 16963cb64bd9999537c4a056bff9915bab2911d2 (patch) | |
tree | cba0518d01077d17a3a54fad2cd122547596ba3b | |
parent | d5f010e93bf3770eb8c443eb0b502c299860a1d8 (diff) | |
download | gdb-16963cb64bd9999537c4a056bff9915bab2911d2.zip gdb-16963cb64bd9999537c4a056bff9915bab2911d2.tar.gz gdb-16963cb64bd9999537c4a056bff9915bab2911d2.tar.bz2 |
gdb/
* eval.c (evaluate_struct_tuple): Skip static fields.
gdb/testsuite/
* gdb.cp/bs15503.exp: Update comment for no longer crashing
test.
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/eval.c | 4 | ||||
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/bs15503.exp | 6 |
4 files changed, 16 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1118266..768c782 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2006-07-20 Daniel Jacobowitz <dan@codesourcery.com> + + * eval.c (evaluate_struct_tuple): Skip static fields. + 2006-07-19 Mark Kettenis <kettenis@gnu.org> * alphaobsd-tdep.c: Include "obsd-tdep.h". @@ -283,6 +283,10 @@ evaluate_struct_tuple (struct value *struct_val, if (variantno < 0) { fieldno++; + /* Skip static fields. */ + while (fieldno < TYPE_NFIELDS (struct_type) + && TYPE_FIELD_STATIC_KIND (struct_type, fieldno)) + fieldno++; subfieldno = fieldno; if (fieldno >= TYPE_NFIELDS (struct_type)) error (_("too many initializers")); diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index a6ba05e..4371abe 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-07-20 Daniel Jacobowitz <dan@codesourcery.com> + + * gdb.cp/bs15503.exp: Update comment for no longer crashing + test. + 2006-07-19 Andrew Stubbs <andrew.stubbs@st.com> * gdb.base/ifelse.exp: Remove troublesome 'got here' messages. diff --git a/gdb/testsuite/gdb.cp/bs15503.exp b/gdb/testsuite/gdb.cp/bs15503.exp index dee8b6e..aa11ada 100644 --- a/gdb/testsuite/gdb.cp/bs15503.exp +++ b/gdb/testsuite/gdb.cp/bs15503.exp @@ -83,11 +83,11 @@ gdb_test "print (const char *) s" \ # gdb_test "print s > "AAA" "\\$\[0-9\]+ = true" # gdb_test "print s < "ZZZ" "\\$\[0-9\]+ = true" -# TODO crash gdb! This is going to be a great test! -# -- chastain 2004-01-07 +# TODO: GDB doesn't know to convert the string to a const char *, and +# instead tries to use the string as a structure initializer. # # gdb_test "print s == \"I am a short stringand now a longer string\"" \ -# "\\$\[0-9\]+ = "true" +# "\\$\[0-9\]+ = true" gdb_test "print (const char *) s.substr(0,4)" "\\$\[0-9\]+ = $hex \"I am\"" gdb_test "print (const char *) (s=s.substr(0,4))" \ |