diff options
author | Richard Guenther <rguenther@suse.de> | 2010-08-08 15:45:22 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-08-08 15:45:22 +0000 |
commit | b4a4e6ae0e06179b1ab6f91af0f6a60ca301aa75 (patch) | |
tree | 7c6ec5042fac531cfdc47f01a64fb6d8ff62f5b3 /gcc | |
parent | cf00499e1927b09933965b959da6054e8f76e319 (diff) | |
download | gcc-b4a4e6ae0e06179b1ab6f91af0f6a60ca301aa75.zip gcc-b4a4e6ae0e06179b1ab6f91af0f6a60ca301aa75.tar.gz gcc-b4a4e6ae0e06179b1ab6f91af0f6a60ca301aa75.tar.bz2 |
re PR tree-optimization/45109 (ICE: in get_constraint_for_component_ref, at tree-ssa-structalias.c:2932)
2010-08-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45109
* gcc.c-torture/compile/pr45109.c: New testcase.
From-SVN: r163007
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr45109.c | 38 |
2 files changed, 43 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 052b8bb..71d33dd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-08-08 Richard Guenther <rguenther@suse.de> + + PR tree-optimization/45109 + * gcc.c-torture/compile/pr45109.c: New testcase. + 2010-08-08 Uros Bizjak <ubizjak@gmail.com> * gcc.dg/march.c: Skip if -march defined. diff --git a/gcc/testsuite/gcc.c-torture/compile/pr45109.c b/gcc/testsuite/gcc.c-torture/compile/pr45109.c new file mode 100644 index 0000000..0e46c38 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr45109.c @@ -0,0 +1,38 @@ +struct o_fsm_t; +struct o_fsm_event_t; + +typedef void (*fn_t) (struct o_fsm_t *, + struct o_fsm_event_t const *); + +struct o_fsm_state_t { + fn_t dispatch; +}; + +struct o_fsm_t { + fn_t dispatch; +}; + +extern struct o_fsm_state_t o_fsm_tran(struct o_fsm_t *fsm, + struct o_fsm_state_t next_state); +static void plist_parser_state_start(struct o_fsm_t *fsm, + struct o_fsm_event_t const *fsm_event); + +struct o_fsm_state_t o_fsm_state(fn_t dispatch_fcn) +{ + return *(struct o_fsm_state_t *)&dispatch_fcn; +} + +typedef struct _o_plist_parser_t { + struct o_fsm_t fsm; +} o_plist_parser_t; + +static void plist_parser_state_start(struct o_fsm_t *fsm, + struct o_fsm_event_t const *fsm_event) +{ +} + +void o_plist_deserialize_xml(int fin) +{ + o_plist_parser_t parser; + o_fsm_tran(&parser.fsm, o_fsm_state(plist_parser_state_start)); +} |