Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-36206

Server does not build on Debian testing with default gcc compiler

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.1.2
    • Affects Version/s: None
    • Component/s: Build
    • None
    • Fully Compatible
    • Linux
    • Platforms 2018-08-13

      Trying to build server master.

      Error:

      Compiling build/opt/third_party/icu4c-57.1/source/i18n/dayperiodrules.o
      Compiling build/opt/mongo/db/commands/list_databases.o
      Generating library build/opt/mongo/db/commands/libshell_protocol.a
      Skipping ranlib for thin archive build/opt/mongo/db/commands/libshell_protocol.a
      Compiling build/opt/mongo/db/update/log_builder.o
      Compiling build/opt/mongo/util/periodic_runner_impl.o
      Compiling build/opt/third_party/icu4c-57.1/source/common/ucnv_bld.o
      Compiling build/opt/third_party/yaml-cpp-0.5.3/src/scanner.o
      Compiling build/opt/mongo/util/cmdline_utils/censor_cmdline.o
      Compiling build/opt/mongo/db/s/active_migrations_registry.o
      Compiling build/opt/third_party/s2/strings/split.o
      Generating library build/opt/mongo/db/libcommon.a
      Skipping ranlib for thin archive build/opt/mongo/db/libcommon.a
      Compiling build/opt/third_party/s2/strings/strutil.o
      Compiling build/opt/third_party/s2/strings/stringprintf.o
      Compiling build/opt/third_party/pcre-8.41/pcre_fullinfo.o
      Compiling build/opt/third_party/wiredtiger/src/cursor/cur_ds.o
      Compiling build/opt/third_party/IntelRDFPMathLib20U1/LIBRARY/src/bid128_erf.o
      Compiling build/opt/mongo/db/free_mon/free_mon_protocol_gen.o
      Compiling build/opt/mongo/db/pipeline/parsed_add_fields.o
      Compiling build/opt/third_party/shim_mozjs.o
      Compiling build/opt/mongo/db/commands/snapshot_management.o
      Compiling build/opt/mongo/platform/stack_locator_linux.o
      Compiling build/opt/third_party/icu4c-57.1/source/i18n/rbnf.o
      Compiling build/opt/third_party/icu4c-57.1/source/common/rbbitblb.o
      Compiling build/opt/mongo/db/operation_context.o
      Compiling build/opt/mongo/db/commands/oplog_application_checks.o
      Compiling build/opt/mongo/db/auth/authz_manager_external_state_local.o
      In file included from src/mongo/platform/stack_locator_pthread_getattr_np.cpp:36:0,
                       from src/mongo/platform/stack_locator_linux.cpp:29:
      src/mongo/util/scopeguard.h: In instantiation of 'mongo::ScopeGuardImpl1<F, P1> mongo::MakeGuard(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]':
      src/mongo/platform/stack_locator_pthread_getattr_np.cpp:45:51:   required from here
      src/mongo/util/scopeguard.h:156:7: error: mangled name for 'mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>::ScopeGuardImpl1(const mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>&)' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
       class ScopeGuardImpl1 : public ScopeGuardImplBase {
             ^~~~~~~~~~~~~~~
      src/mongo/util/scopeguard.h:156:7: error: mangled name for 'mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>::ScopeGuardImpl1(const mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>&)' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
      src/mongo/util/scopeguard.h:179:53: note: synthesized method 'mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>::ScopeGuardImpl1(const mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>&)' first required here 
           return ScopeGuardImpl1<F, P1>::MakeGuard(fun, p1);
                                                           ^
      src/mongo/util/scopeguard.h: In instantiation of 'mongo::ScopeGuardImpl1<F, P1>::~ScopeGuardImpl1() [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]':
      src/mongo/platform/stack_locator_pthread_getattr_np.cpp:45:51:   required from here
      src/mongo/util/scopeguard.h:162:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::~ScopeGuardImpl1() [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           ~ScopeGuardImpl1() throw() {
           ^
      src/mongo/util/scopeguard.h:162:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::~ScopeGuardImpl1() [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
      Generating library build/opt/third_party/s2/strings/libstrings.a
      src/mongo/util/scopeguard.h: In instantiation of 'mongo::ScopeGuardImpl1<F, P1>::ScopeGuardImpl1(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]':
      src/mongo/util/scopeguard.h:159:16:   required from 'static mongo::ScopeGuardImpl1<F, P1> mongo::ScopeGuardImpl1<F, P1>::MakeGuard(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]'
      src/mongo/util/scopeguard.h:179:45:   required from 'mongo::ScopeGuardImpl1<F, P1> mongo::MakeGuard(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]'
      src/mongo/platform/stack_locator_pthread_getattr_np.cpp:45:51:   required from here
      src/mongo/util/scopeguard.h:171:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::ScopeGuardImpl1(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           ScopeGuardImpl1(F fun, P1 p1) : fun_(fun), p1_(p1) {}
           ^~~~~~~~~~~~~~~
      src/mongo/util/scopeguard.h:171:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::ScopeGuardImpl1(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
      Generating library build/opt/mongo/executor/libnetwork_interface_factory.a
      src/mongo/util/scopeguard.h:166:10: error: mangled name for 'void mongo::ScopeGuardImpl1<F, P1>::Execute() [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           void Execute() {
                ^~~~~~~
      src/mongo/util/scopeguard.h:171:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::ScopeGuardImpl1(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           ScopeGuardImpl1(F fun, P1 p1) : fun_(fun), p1_(p1) {}
           ^~~~~~~~~~~~~~~
      src/mongo/util/scopeguard.h:97:17: error: mangled name for 'static void mongo::ScopeGuardImplBase::SafeExecute(J&) [with J = mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           static void SafeExecute(J& j) throw() {
                       ^~~~~~~~~~~
      src/mongo/util/scopeguard.h:158:35: error: mangled name for 'static mongo::ScopeGuardImpl1<F, P1> mongo::ScopeGuardImpl1<F, P1>::MakeGuard(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           static ScopeGuardImpl1<F, P1> MakeGuard(F fun, P1 p1) {
                                         ^~~~~~~~~
      src/mongo/util/scopeguard.h:162:5: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1>::~ScopeGuardImpl1() [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
           ~ScopeGuardImpl1() throw() {
           ^
      src/mongo/util/scopeguard.h:178:31: error: mangled name for 'mongo::ScopeGuardImpl1<F, P1> mongo::MakeGuard(F, P1) [with F = int (*)(pthread_attr_t*) throw (); P1 = pthread_attr_t*]' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
       inline ScopeGuardImpl1<F, P1> MakeGuard(F fun, P1 p1) {
                                     ^~~~~~~~~
      src/mongo/util/scopeguard.h:156:7: error: mangled name for 'mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>::ScopeGuardImpl1(const mongo::ScopeGuardImpl1<int (*)(pthread_attr_t*) throw (), pthread_attr_t*>&)' will change in C++17 because the exception specification is part of a function type [-Werror=noexcept-type]
       class ScopeGuardImpl1 : public ScopeGuardImplBase {
             ^~~~~~~~~~~~~~~
      Skipping ranlib for thin archive build/opt/third_party/s2/strings/libstrings.a
      Skipping ranlib for thin archive build/opt/mongo/executor/libnetwork_interface_factory.a
      Compiling build/opt/third_party/IntelRDFPMathLib20U1/LIBRARY/src/bid64_cosh.o
      cc1plus: all warnings being treated as errors
      Compiling build/opt/mongo/db/pipeline/accumulator_push.o
      scons: *** [build/opt/mongo/platform/stack_locator_linux.o] Error 1
      
      scons: building terminated because of errors.
      build/opt/mongo/platform/stack_locator_linux.o failed: Error 1
      
      

      System:

      speed% gcc -v
      Using built-in specs.
      COLLECT_GCC=gcc
      COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
      OFFLOAD_TARGET_NAMES=nvptx-none
      OFFLOAD_TARGET_DEFAULT=1
      Target: x86_64-linux-gnu
      Configured with: ../src/configure -v --with-pkgversion='Debian 7.3.0-25' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
      Thread model: posix
      gcc version 7.3.0 (Debian 7.3.0-25) 
      speed% uname -a
      Linux speed 4.16.0-2-amd64 #1 SMP Debian 4.16.16-2 (2018-06-22) x86_64 GNU/Linux
      

            Assignee:
            mark.benvenuto@mongodb.com Mark Benvenuto
            Reporter:
            oleg.pudeyev@mongodb.com Oleg Pudeyev (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: