and closure CLOSURE. */
extern struct value *allocate_computed_value (struct type *type,
- struct lval_funcs *funcs,
- void *closure);
+ const struct lval_funcs *funcs,
+ void *closure);
+
+extern struct value *allocate_optimized_out_value (struct type *type);
/* If VALUE is lval_computed, return its lval_funcs structure. */
-extern struct lval_funcs *value_computed_funcs (struct value *value);
+extern const struct lval_funcs *value_computed_funcs (struct value *value);
/* If VALUE is lval_computed, return its closure. The meaning of the
returned value depends on the functions VALUE uses. */
extern struct value *value_from_contents_and_address (struct type *,
const gdb_byte *,
CORE_ADDR);
+extern struct value *value_from_contents (struct type *, const gdb_byte *);
extern struct value *default_value_from_register (struct type *type,
int regnum,
extern struct value *value_zero (struct type *type, enum lval_type lv);
-extern struct value *value_one (struct type *type, enum lval_type lv);
+extern struct value *value_one (struct type *type);
extern struct value *value_repeat (struct value *arg1, int count);
/* C++ */
-extern struct value *value_of_this (int complain);
+extern struct value *value_of_this (const struct language_defn *lang,
+ int complain);
extern struct value *value_x_binop (struct value *arg1, struct value *arg2,
enum exp_opcode op,
extern int unop_user_defined_p (enum exp_opcode op, struct value *arg1);
-extern int destructor_name_p (const char *name, const struct type *type);
+extern int destructor_name_p (const char *name, struct type *type);
extern void value_incref (struct value *val);
extern struct value *value_allocate_space_in_inferior (int);
-extern struct value *value_of_local (const char *name, int complain);
-
extern struct value *value_subscripted_rvalue (struct value *array,
LONGEST index, int lowerbound);