------- Comment #3 from sje at cup dot hp dot com 2007-03-15 00:19 ------- My attempt to add an attachment failed (mail to dberlin has been sent) so here is a cut down code segment from genautomata.c that generates different assembly language when compiled with the PA stage1 compiler than it does with the PA stage2 compiler.
enum regexp_mode { rm_unit, rm_reserv, rm_nothing, rm_sequence, rm_repeat, rm_allof, rm_oneof }; struct regexp; typedef struct regexp *regexp_t; struct oneof_regexp { int regexps_num; regexp_t regexps [1]; }; struct regexp { enum regexp_mode mode; int pos; union { struct oneof_regexp oneof; } regexp; }; void process_alts_for_forming_states (regexp_t regexp) { int i = 1; for (i = regexp->regexp.oneof.regexps_num - 1; i >= 0; i--) process_alts_for_forming_states (__extension__ (({ struct regexp *const _regexp = (regexp); if (_regexp->mode != rm_oneof) abort (); &(_regexp)->regexp. oneof; }))->regexps [i]); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31169