* valops.c (value_cast_structs): Return NULL for failure.
(value_cast): Handle NULL from value_cast_structs. (value_fetch_lazy): Call check_typedef. Remove unused variable. testsuite/ * gdb.base/structs3.c, gdb.base/structs3.exp: New files.
This commit is contained in:
parent
dcf4fbde10
commit
694182d2ba
5 changed files with 100 additions and 5 deletions
42
gdb/testsuite/gdb.base/structs3.c
Normal file
42
gdb/testsuite/gdb.base/structs3.c
Normal file
|
@ -0,0 +1,42 @@
|
|||
/* This testcase is part of GDB, the GNU debugger.
|
||||
|
||||
Copyright 2008
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
struct One
|
||||
{
|
||||
int x;
|
||||
};
|
||||
|
||||
struct Two
|
||||
{
|
||||
struct One one;
|
||||
int x, y;
|
||||
};
|
||||
|
||||
struct Two two = { { 1 }, 2, 3 };
|
||||
|
||||
typedef struct One tOne;
|
||||
typedef struct Two tTwo;
|
||||
|
||||
tOne *onep = &two.one;
|
||||
tTwo *twop = &two;
|
||||
|
||||
int main()
|
||||
{
|
||||
onep->x = twop->y;
|
||||
return 0;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue