2012-12-06 Pedro Alves <palves@redhat.com>

Tom Tromey  <tromey@redhat.com>
	* valops.c (value_cast): Move TYPE_CODE_VOID case earlier.
testsuite
	* gdb.base/exprs.exp: Add tests for cast to void.
This commit is contained in:
Tom Tromey 2012-12-06 21:41:07 +00:00
parent 731145cb17
commit 0ba2eb0fb6
4 changed files with 18 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2012-12-06 Pedro Alves <palves@redhat.com>
Tom Tromey <tromey@redhat.com>
* valops.c (value_cast): Move TYPE_CODE_VOID case earlier.
2012-12-06 Jens Elmenthaler <jens.elmenthaler@advantest.com>
PR mi/14741:

View file

@ -1,3 +1,8 @@
2012-12-06 Pedro Alves <palves@redhat.com>
Tom Tromey <tromey@redhat.com>
* gdb.base/exprs.exp: Add tests for cast to void.
2012-12-06 Jens Elmenthaler <jens.elmenthaler@advantest.com>
* gdb.python/py-mi.exp: Correct expected results for attribute

View file

@ -270,3 +270,7 @@ gdb_test {print v_int_array_init[1]@1} { = \{20\}}
# gdb's {} extension
gdb_test_no_output "set variable v_short_array\[0\] = 42"
gdb_test "print {short} v_short_array" "$decimal = 42"
# Regression tests for cast to void.
gdb_test "print (void) v_int_pointer" " = void"
gdb_test "print & (void) v_char" "value not located in memory."

View file

@ -569,6 +569,10 @@ value_cast (struct type *type, struct value *arg2)
}
return val;
}
else if (code1 == TYPE_CODE_VOID)
{
return value_zero (type, not_lval);
}
else if (TYPE_LENGTH (type) == TYPE_LENGTH (type2))
{
if (code1 == TYPE_CODE_PTR && code2 == TYPE_CODE_PTR)
@ -582,10 +586,6 @@ value_cast (struct type *type, struct value *arg2)
}
else if (VALUE_LVAL (arg2) == lval_memory)
return value_at_lazy (type, value_address (arg2));
else if (code1 == TYPE_CODE_VOID)
{
return value_zero (type, not_lval);
}
else
{
error (_("Invalid cast."));