summaryrefslogtreecommitdiff
path: root/gdb/value.h
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2008-09-11 14:14:20 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2008-09-11 14:14:20 +0000
commit6a466f224c6f8018e288b6bdf630a8782e97f188 (patch)
tree21e65bf6e32acecfff434d8f1aee051be27d62b8 /gdb/value.h
parente9ff7d5d866bd91e95b830a0cd60ea7181f23050 (diff)
downloadgdb-6a466f224c6f8018e288b6bdf630a8782e97f188.tar.gz
* value.h (unop_promote, binop_promote): Add prototypes.
* eval.c (unop_promote, binop_promote): New functions. * valarith.c (unop_result_type, binop_result_type): Remove. (value_binop): Call binop_promote or unop_promote. Inline remaining parts of binop_result_type. Remove special code to truncate integer values for unsigned operations. (value_pos): Call unop_promote. Inline remaining parts of unop_result_type. (value_neg, value_complement): Likewise.
Diffstat (limited to 'gdb/value.h')
-rw-r--r--gdb/value.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/value.h b/gdb/value.h
index 5ff84b34c28..ba89858a5f8 100644
--- a/gdb/value.h
+++ b/gdb/value.h
@@ -446,6 +446,14 @@ extern CORE_ADDR parse_and_eval_address_1 (char **expptr);
extern LONGEST parse_and_eval_long (char *exp);
+extern void unop_promote (const struct language_defn *language,
+ struct gdbarch *gdbarch,
+ struct value **arg1);
+
+extern void binop_promote (const struct language_defn *language,
+ struct gdbarch *gdbarch,
+ struct value **arg1, struct value **arg2);
+
extern struct value *access_value_history (int num);
extern struct value *value_of_internalvar (struct internalvar *var);