I recently learned the gcc no longer checks for unreachable code. Even if you use -Wunreachable-code flag. Yikes! If gcc did report it, that would have found the GnuTLS problem. Who knows how much unreachable code is in libreswan.