Hi, it seems to be gcc bug. For inexplicable reason compiler optimized 'if (cp && *cp)' to just 'if (*cp)' :-(
Changing 'char *cp' to 'char * volatile cp' at line 468 in support/export/client.c is enough to explain to gcc that it has no idea what it is doing, and fixes the crash. I think that after code does 'strncpy(new, old, cp-old)' or 'new[cp-old] = 0' or 'if (cp != old && *cp)' compiler believes 'cp' cannot be NULL, forgetting that both 'cp' and 'old' could have been NULL, making these expressions valid for NULL cp. Petr
nfsworkaround.patch
Description: Binary data