Ian Jackson <ijack...@chiark.greenend.org.uk> writes:
> I recently came across this bug report:
>   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=616180
> This relates to a gcc optimisation bug affecting postgresql error
> handling.  (It was reported there in Debian on Sparc in gcc 4.x.)
> Assumign that the ereport function/macro used there doesn't return, I
> agree that this is a gcc bug not a postgresql bug.

Well, that's what I think anyway ;-)

> Alex Deiter appears to have tried to report this to gcc upstream:
>   http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29968
> However, the test program in that bugzilla report is indeed broken.
> The gcc maintainers were right to reject the bug.

Hm --- it's a bit questionable.  The test execution appears to show
that the side-effect of program abort happens before the printf call;
but depending on how much buffering of stdout is happening, it might
not really prove that.  Your version is a lot more conclusive, at least
as far as Postgres' issue is concerned, because in our case we know
the ereport() function won't return.

> I have tried to reproduce the original problem with a smaller test
> program (see below) than postgresql, but failed (on 32-bit sparc with
> gcc 4.4.5-8, Debian squeeze).

I wonder whether the gcc folk reconsidered and fixed the problem
somewhere between 4.1.x and 4.4.x.  I've seen them reverse course
before on what was or wasn't a bug.

                        regards, tom lane


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to