This is a bit of a bugger because I think this is actually a compiler/optimizer bug.
I can rearrange the code so that 'err' is not even in scope when setjmp() is called and it still reports it as possibly being clobbered.
I do not like the CLOBBER_PROTECT() macro though because it works by making assumptions about what the compiler does.
I will see if I cannot change this so that CLOBBER_PROTECT() is no longer needed.
This is a bit of a bugger because I think this is actually a compiler/optimizer bug.
I can rearrange the code so that 'err' is not even in scope when setjmp() is called and it still reports it as possibly being clobbered.
I do not like the CLOBBER_PROTECT() macro though because it works by making assumptions about what the compiler does.
I will see if I cannot change this so that CLOBBER_PROTECT() is no longer needed.