summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/value.c4
-rw-r--r--gdb/value.h4
2 files changed, 6 insertions, 2 deletions
diff --git a/gdb/value.c b/gdb/value.c
index 1921aecdbc1..640053ddce5 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -1680,7 +1680,7 @@ record_latest_value (struct value *val)
/* We preserve VALUE_LVAL so that the user can find out where it was fetched
from. This is a bit dubious, because then *&$1 does not just return $1
but the current contents of that location. c'est la vie... */
- val->m_modifiable = 0;
+ val->set_modifiable (0);
value_history.push_back (release_value (val));
@@ -2173,7 +2173,7 @@ set_internalvar (struct internalvar *var, struct value *val)
default:
new_kind = INTERNALVAR_VALUE;
struct value *copy = val->copy ();
- copy->m_modifiable = 1;
+ copy->set_modifiable (1);
/* Force the value to be fetched from the target now, to avoid problems
later when this internalvar is referenced and the target is gone or
diff --git a/gdb/value.h b/gdb/value.h
index 7e232f378ed..f35bfc7206c 100644
--- a/gdb/value.h
+++ b/gdb/value.h
@@ -229,6 +229,10 @@ public:
int deprecated_modifiable () const
{ return m_modifiable; }
+ /* Set or clear the modifiable flag. */
+ void set_modifiable (int val)
+ { m_modifiable = val; }
+
LONGEST pointed_to_offset () const
{ return m_pointed_to_offset; }