This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: gcc forgets to decrease esp after function call
Vladimir Simonov writes:
> The attached test case can be built by compile.sh.
> It produces two binaries - test_bin_bad & test_bin_good.
>
> test_bin_good prints "Hello word" before exit.
> test_bin_bad crashes.
>
> The difference is the only -O2 used while test_bin_bad build.
>
> The symptoms are the same - incorrect esp usage in caller
> after call function returning object.
>
> We reproduced the bug in gcc 4.1.0/4.1.1/4.1.2
> gcc 3.x can't compile the sources.
OK, we're getting closer. Unfortunately, your test case includes a
ton of system headers for one particular system/version of gcc, and it
also includes a lot of library code not used in your test case.
Fillet that, and you will have a test case that can be submitted.
Andrew.