Skip to content

DEBUG build of Node.js 8.11.2 fails due to nghttp2 changes #20806

@sgallagher

Description

@sgallagher
  • Version: 8.11.2
  • Platform: Fedora Linux
  • Subsystem: Buildsystem
  g++ '-DNODE_OPENSSL_CERT_STORE' '-DNODE_ARCH="x64"' '-DNODE_PLATFORM="linux"' '-DNODE_WANT_INTERNALS=1' '-DV8_DEPRECATION_WARNINGS=1' '-DNODE_OPENSSL_SYSTEM_CERT_PATH=""' '-DHAVE_INSPECTOR=1' '-D__POSIX__' '-DHAVE_DTRACE=1' '-DNODE_USE_V8_PLATFORM=1' '-DNODE_DEBUG_HTTP2=1' '-DNODE_HAVE_I18N_SUPPORT=1' '-DNODE_HAVE_SMALL_ICU=1' '-DHAVE_OPENSSL=1' '-DUCONFIG_NO_SERVICE=1' '-DUCONFIG_NO_REGULAR_EXPRESSIONS=1' '-DU_ENABLE_DYLOAD=0' '-DU_STATIC_IMPLEMENTATION=1' '-DU_HAVE_STD_STRING=0' '-DUCONFIG_NO_BREAK_ITERATION=0' '-DDEBUG' '-D_DEBUG' '-DV8_ENABLE_CHECKS' -I../src -I/builddir/build/BUILD/node-v8.11.2/out/Debug/obj/gen -I/builddir/build/BUILD/node-v8.11.2/out/Debug/obj/gen/include -I../deps/v8/include -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common -I../deps/cares/include  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -g -O0 -fno-rtti -fno-exceptions -std=gnu++0x -MMD -MF /builddir/build/BUILD/node-v8.11.2/out/Debug/.deps//builddir/build/BUILD/node-v8.11.2/out/Debug/obj.target/node_lib/src/node_platform.o.d.raw  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -g   -D_LARGEFILE_SOURCE   -D_FILE_OFFSET_BITS=64   -DZLIB_CONST   -fno-delete-null-pointer-checks  -c -o /builddir/build/BUILD/node-v8.11.2/out/Debug/obj.target/node_lib/src/node_platform.o ../src/node_platform.cc
In file included from ../src/node_http2.cc:4:
../src/node_http2.cc: In static member function 'static void node::http2::Http2Session::OnStreamReadImpl(ssize_t, const uv_buf_t*, uv_handle_type, void*)':
../src/node_http2.cc:1690:27: error: 'this' is unavailable for static member functions
       DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
                           ^~~~
../src/node_http2.h:50:9: note: in definition of macro 'DEBUG_HTTP2SESSION2'
     if (session != nullptr) {                                                 \
         ^~~~~~~
../src/node_http2.cc:1690:27: error: 'this' is unavailable for static member functions
       DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
                           ^~~~
../src/node_http2.h:39:41: note: in definition of macro 'DEBUG_HTTP2'
 #define DEBUG_HTTP2(...) debug_vfprintf(__VA_ARGS__);
                                         ^~~~~~~~~~~
../src/node_http2.cc:1690:7: note: in expansion of macro 'DEBUG_HTTP2SESSION2'
       DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
       ^~~~~~~~~~~~~~~~~~~
../src/node_http2.cc:1690:27: error: 'this' is unavailable for static member functions
       DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
                           ^~~~
../src/node_http2.h:39:41: note: in definition of macro 'DEBUG_HTTP2'
 #define DEBUG_HTTP2(...) debug_vfprintf(__VA_ARGS__);
                                         ^~~~~~~~~~~
../src/node_http2.cc:1690:7: note: in expansion of macro 'DEBUG_HTTP2SESSION2'
       DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);

The build was performed with GCC 8.1.1 against nghttp2 1.32.0.
Configure flags:

./configure --prefix=/usr \
           --shared-openssl \
           --shared-zlib \
           --shared-libuv \
           --shared-http-parser \
           --shared-nghttp2 \
           --with-dtrace \
           --with-intl=system-icu \
           --debug-http2 \
           --debug-nghttp2 \
           --openssl-use-def-ca-store

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions