aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/java/ChangeLog4
-rw-r--r--gcc/java/expr.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index aa23f33..e9a07d9 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2005-07-15 Andrew Haley <aph@redhat.com>
+
+ * expr.c (expand_load_internal): Convert to destination type.
+
2005-07-22 Manfred Hollstein <mh@suse.com>
* verify-impl.c (check_class_constant): Fix uninitialised warnings.
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index f3f4c84..5c5a56c 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -1321,7 +1321,7 @@ expand_load_internal (int index, tree type, int pc)
value into it. Then we push this new local on the stack.
Hopefully this all gets optimized out. */
copy = build_decl (VAR_DECL, NULL_TREE, type);
- if (INTEGRAL_TYPE_P (type)
+ if (INTEGRAL_TYPE_P (type) || POINTER_TYPE_P (type)
&& TREE_TYPE (copy) != TREE_TYPE (var))
var = convert (type, var);
java_add_local_var (copy);