https://bugs.winehq.org/show_bug.cgi?id=43971
--- Comment #6 from Kol kol@MV8660.spb.edu --- This is not a Wine bug nor a compiler bug, but is an incompatibility between recent Wine versions and old version of GnuTLS. On my very old system equipped with GnuTLS 2.4.2 in the file <gnutls/gnutls.h> in the definition of type "gnutls_retr_st" there is a union member
union key { ... } key;
which is in contradiction with "struct key" in "bcrypt_main.c". In newer versions of GnuTLS this union type becomes nameless:
union { ... } key;
So the solution is or to upgrade GnuTLS, or simply to replace the string "union key" with "union" in the file "/usr/include/gnutls/gnutls.h".