Index: toplev.c =================================================================== RCS file: /home/cvsroot/gcc/gcc/toplev.c,v retrieving revision 1.1.1.12.2.4 retrieving revision 1.1.1.12.2.5 diff -u -r1.1.1.12.2.4 -r1.1.1.12.2.5 --- toplev.c 2003/12/08 02:39:13 1.1.1.12.2.4 +++ toplev.c 2003/12/08 04:57:39 1.1.1.12.2.5 @@ -5026,9 +5026,6 @@ if (flag_really_no_inline == 2) flag_really_no_inline = flag_no_inline; - - if (flag_stack_protection) - flag_propolice_protection = TRUE; } /* Process the options that have been parsed. */ @@ -5206,6 +5203,12 @@ /* The presence of IEEE signaling NaNs, implies all math can trap. */ if (flag_signaling_nans) flag_trapping_math = 1; + + /* This combination makes optimized frame addressings and causes + a internal compilation error at prepare_stack_protection. + so don't allow it. */ + if (flag_stack_protection && !flag_propolice_protection) + flag_propolice_protection = TRUE; } /* Initialize the compiler back end. */