diff options
Diffstat (limited to 'gdb/values.c')
-rw-r--r-- | gdb/values.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gdb/values.c b/gdb/values.c index 0ea9c4a..244d877 100644 --- a/gdb/values.c +++ b/gdb/values.c @@ -189,6 +189,24 @@ release_value (val) } } +/* Release all values up to mark */ +value_ptr +value_release_to_mark (mark) + value_ptr mark; +{ + value_ptr val, next; + + for (val = next = all_values; next; next = VALUE_NEXT (next)) + if (VALUE_NEXT (next) == mark) + { + all_values = VALUE_NEXT (next); + VALUE_NEXT (next) = 0; + return val; + } + all_values = 0; + return val; +} + /* Return a copy of the value ARG. It contains the same contents, for same memory address, but it's a different block of storage. */ |