// Adapted semantic slice of the null check added by OpenSSL revision // 28a00bcd8e318da18031b2ac8778c64147cd54f9. struct Key { int value; }; struct Certificate { Key* key; }; int copyPublicKey(Certificate certificate) { Key* pktmp = certificate.key; if (pktmp == nullptr) return -1; return pktmp->value; } int main() { Certificate certificate{nullptr}; return copyPublicKey(certificate); }