Giter Site home page Giter Site logo

1.4.19 fails to build: `s2n_ktls_io.c: error: variable-sized object may not be initialized except with an empty initializer` about s2n-tls HOT 2 OPEN

barracuda156 avatar barracuda156 commented on August 19, 2024
1.4.19 fails to build: `s2n_ktls_io.c: error: variable-sized object may not be initialized except with an empty initializer`

from s2n-tls.

Comments (2)

barracuda156 avatar barracuda156 commented on August 19, 2024

Ah, it is just broken, regardless of standard.

gcc 14 with c11, same story:

[ 71%] Building C object CMakeFiles/s2n.dir/tls/s2n_prf.c.o
/opt/local/bin/ccache /opt/local/bin/gcc-mp-14 -DS2N_ATOMIC_SUPPORTED -DS2N_CLOEXEC_SUPPORTED -DS2N_CLOEXEC_XOPEN_SUPPORTED -DS2N_DIAGNOSTICS_POP_SUPPORTED -DS2N_DIAGNOSTICS_PUSH_SUPPORTED -DS2N_EXECINFO_AVAILABLE -DS2N_FALL_THROUGH_SUPPORTED -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4 -DS2N_LIBCRYPTO_SUPPORTS_FLAG_NO_CHECK_TIME -DS2N_LIBCRYPTO_SUPPORTS_RSA_PSS_SIGNING -DS2N_LIBCRYPTO_SUPPORTS_X509_STORE_LIST -DS2N_MADVISE_SUPPORTED -DS2N_MINHERIT_SUPPORTED -DS2N_STACKTRACE -D_POSIX_C_SOURCE=200809L -Ds2n_EXPORTS -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19 -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/api -isystem /opt/local/include -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -arch ppc -mmacosx-version-min=10.6 -fPIC -pedantic -std=gnu11 -Wall -Wimplicit -Wunused -Wcomment -Wchar-subscripts -Wuninitialized -Wshadow -Wcast-align -Wwrite-strings -Wno-deprecated-declarations -Wno-unknown-pragmas -Wformat-security -Wno-missing-braces -Wsign-compare -Wno-strict-prototypes -Werror -fvisibility=hidden -DS2N_EXPORTS -fPIC -MD -MT CMakeFiles/s2n.dir/tls/s2n_prf.c.o -MF CMakeFiles/s2n.dir/tls/s2n_prf.c.o.d -o CMakeFiles/s2n.dir/tls/s2n_prf.c.o -c /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/tls/s2n_prf.c
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/tls/s2n_ktls_io.c: In function 's2n_ktls_sendmsg':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/tls/s2n_ktls_io.c:214:55: error: variable-sized object may not be initialized except with an empty initializer
  214 |     char control_data[S2N_KTLS_CONTROL_BUFFER_SIZE] = { 0 };
      |                                                       ^
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/tls/s2n_ktls_io.c: In function 's2n_ktls_recvmsg':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.19/tls/s2n_ktls_io.c:257:55: error: variable-sized object may not be initialized except with an empty initializer
  257 |     char control_data[S2N_KTLS_CONTROL_BUFFER_SIZE] = { 0 };
      |                                                       ^
make[2]: *** [CMakeFiles/s2n.dir/tls/s2n_ktls_io.c.o] Error 1

Apple clang of Catalina:

/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:214:23: error: variable length array folded to constant array as an extension [-Werror,-Wgnu-folding-constant]
    char control_data[S2N_KTLS_CONTROL_BUFFER_SIZE] = { 0 };
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:43:38: note: expanded from macro 'S2N_KTLS_CONTROL_BUFFER_SIZE'
#define S2N_KTLS_CONTROL_BUFFER_SIZE (CMSG_SPACE(S2N_KTLS_RECORD_TYPE_SIZE))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:214:23: note: cast that performs the conversions of a reinterpret_cast is not allowed in a constant expression
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:43:39: note: expanded from macro 'S2N_KTLS_CONTROL_BUFFER_SIZE'
#define S2N_KTLS_CONTROL_BUFFER_SIZE (CMSG_SPACE(S2N_KTLS_RECORD_TYPE_SIZE))
                                      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/socket.h:652:34: note: expanded from macro 'CMSG_SPACE'
#define CMSG_SPACE(l)           (__DARWIN_ALIGN32(sizeof(struct cmsghdr)) + __DARWIN_ALIGN32(l))
                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/i386/_param.h:43:42: note: expanded from macro '__DARWIN_ALIGN32'
#define       __DARWIN_ALIGN32(p)       ((__darwin_size_t)((char *)(__darwin_size_t)(p) + __DARWIN_ALIGNBYTES32) &~ __DARWIN_ALIGNBYTES32)
                                         ^
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:257:23: error: variable length array folded to constant array as an extension [-Werror,-Wgnu-folding-constant]
    char control_data[S2N_KTLS_CONTROL_BUFFER_SIZE] = { 0 };
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:43:38: note: expanded from macro 'S2N_KTLS_CONTROL_BUFFER_SIZE'
#define S2N_KTLS_CONTROL_BUFFER_SIZE (CMSG_SPACE(S2N_KTLS_RECORD_TYPE_SIZE))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:257:23: note: cast that performs the conversions of a reinterpret_cast is not allowed in a constant expression
/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_security_s2n-tls/s2n-tls/work/s2n-tls-1.4.18/tls/s2n_ktls_io.c:43:39: note: expanded from macro 'S2N_KTLS_CONTROL_BUFFER_SIZE'
#define S2N_KTLS_CONTROL_BUFFER_SIZE (CMSG_SPACE(S2N_KTLS_RECORD_TYPE_SIZE))
                                      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/socket.h:652:34: note: expanded from macro 'CMSG_SPACE'
#define CMSG_SPACE(l)           (__DARWIN_ALIGN32(sizeof(struct cmsghdr)) + __DARWIN_ALIGN32(l))
                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/i386/_param.h:43:42: note: expanded from macro '__DARWIN_ALIGN32'
#define       __DARWIN_ALIGN32(p)       ((__darwin_size_t)((char *)(__darwin_size_t)(p) + __DARWIN_ALIGNBYTES32) &~ __DARWIN_ALIGNBYTES32)
                                         ^
2 errors generated.
make[2]: *** [CMakeFiles/s2n.dir/tls/s2n_ktls_io.c.o] Error 1

from s2n-tls.

barracuda156 avatar barracuda156 commented on August 19, 2024

Wait, I have a fix for this.

from s2n-tls.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.