aboutsummaryrefslogtreecommitdiff
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
commit4066e6467217a64d3c0517038dfc5dd2566355e1 (patch)
tree5031e18407ab27c3ea3adde10e176f1ca7cb70a2 /gdb/value.h
parent89eef114606ca0510db54cec2fc60946a91990e8 (diff)
downloadgdb-4066e6467217a64d3c0517038dfc5dd2566355e1.zip
gdb-4066e6467217a64d3c0517038dfc5dd2566355e1.tar.gz
gdb-4066e6467217a64d3c0517038dfc5dd2566355e1.tar.bz2
* 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 5ff84b3..ba89858 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);