> I get them too and don't know exactly what they mean. I think
> gcc is just telling that after returning to the setjmp
> location via longjmp the variable might not contain what
> there was before (the longjmp mechanism only restores the
> stack pointers, not the variable contents on the stack).
>
> But the longjmp's are there only to clean up the Tcl's
> interpreter nesting and allocations in the case of an
> elog(ERROR) before really jumping back into the postgres main
> loop. Tcl doesn't allocate via palloc, so there would be
> memory allocations never free'd otherwise. The mentioned
> variables aren't accessed after the longjumping session began
> (it's really a longjmp party if Tcl triggers use in turn Tcl
> functions where the queries invoke other functions/triggers
> and so on :-).
See postgres.c. We used to have that warning in postgres.c, but someone
changed something to fix it. I can't see what was changed, now that I
am looking at it.
--
Bruce Momjian | http://www.op.net/~candle
maillist@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026