This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C++ ICE 19990828 in current CVS breaks bootstrap
Am Wed, 15 Dec 1999 schrieb Mark Mitchell:
>>>>>> "Franz" == Franz Sirl <Franz.Sirl-kernel@lauterbach.com> writes:
>
> Franz> OK, preprocessed source included, target triplet is
> Franz> powerpc-unknown-linux-gnu. The gdb commandline for cc1plus
> Franz> is "inst.ii -quiet -dumpbase cinst.cc -g -O2 -version
> Franz> -fvtable-thunks -fno-implicit-templates -fPIC -o cinst.s".
>
>This bug turned out to be in the language-indepdnent processing of
>builtin functions; sqrt in your example. The bug was that a single
>expression was expanded more than once. In particular,
>expand_builtin_mathfn expands the argument, then decides (sometimes)
>that it cannot inline the call, and falls back on expanding the call
>in the usual way. However, that means that the argument is
>reexpanded.
>
>The C++ inlining changes improved the situation by chaning this from
>silently generating bad code to an outright abort.
>
>Here's the fix.
Thanks, that fixes it. Candidate for 2.95.3?
Franz.