Skip to content

Master does not compile on Linux #112

Closed

Description

c01efdc does not compile on my computer, nor the CI(PR 56, build errors). Below is a relevant output from the local build. It compiles on Windows.

GCC 11.4.0 on Ubuntu 22.04. Python 3.10.12.

$ ninja -k 99
[1/1433] Building CXX object _deps/upb-build/CMakeFiles/upb_upbc_protoc-gen-upb_stage0.dir/upbc/protoc-gen-upb.cc.o
FAILED: _deps/upb-build/CMakeFiles/upb_upbc_protoc-gen-upb_stage0.dir/upbc/protoc-gen-upb.cc.o 
/usr/bin/c++ -DCHROMIUM_ZLIB_NO_CHROMECONF -DUPB_BOOTSTRAP_STAGE0 -I/home/dzenan/zarr/ts-rel/_deps/absl-src -I/home/dzenan/zarr/ts-rel/_deps/upb-src -I/home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0 -I/home/dzenan/zarr/ts-rel/_deps/utf8_range-src -I/home/dzenan/zarr/ts-rel/_deps/protobuf-src/src -I/home/dzenan/zarr/ts-rel/_deps/zlib-src -I/home/dzenan/zarr/ts-rel/_deps/zlib-src/contrib/optimizations -I/home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/stage0 -O3 -DNDEBUG -fPIE -Wextra -Werror -Wno-unused-parameter -Wno-long-long -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-maybe-uninitialized -Wno-sequence-point -Wno-unknown-warning-option -fsized-deallocation -MD -MT _deps/upb-build/CMakeFiles/upb_upbc_protoc-gen-upb_stage0.dir/upbc/protoc-gen-upb.cc.o -MF _deps/upb-build/CMakeFiles/upb_upbc_protoc-gen-upb_stage0.dir/upbc/protoc-gen-upb.cc.o.d -o _deps/upb-build/CMakeFiles/upb_upbc_protoc-gen-upb_stage0.dir/upbc/protoc-gen-upb.cc.o -c /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc
In file included from /usr/include/string.h:535,
                 from /usr/include/c++/11/cstring:42,
                 from /home/dzenan/zarr/ts-rel/_deps/absl-src/absl/container/internal/container_memory.h:20,
                 from /home/dzenan/zarr/ts-rel/_deps/absl-src/absl/container/flat_hash_map.h:40,
                 from /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:39:
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:113:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 4 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:116:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 8 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:119:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 16 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:113:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36,
    inlined from ‘void upbc::{anonymous}::GenerateGetters(upb::FieldDefPtr, const upbc::DefPoolPair&, absl::string_view, const NameToFieldDefMap&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:605:48,
    inlined from ‘void upbc::{anonymous}::GenerateMessageInHeader(upb::MessageDefPtr, const upbc::DefPoolPair&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:816:20:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 4 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:116:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36,
    inlined from ‘void upbc::{anonymous}::GenerateGetters(upb::FieldDefPtr, const upbc::DefPoolPair&, absl::string_view, const NameToFieldDefMap&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:605:48,
    inlined from ‘void upbc::{anonymous}::GenerateMessageInHeader(upb::MessageDefPtr, const upbc::DefPoolPair&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:816:20:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 8 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:119:13,
    inlined from ‘void _upb_Message_GetNonExtensionField(const upb_Message*, const upb_MiniTableField*, const void*, void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:213:31,
    inlined from ‘bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/reflection/stage0/google/protobuf/descriptor.upb.h:3017:36,
    inlined from ‘void upbc::{anonymous}::GenerateGetters(upb::FieldDefPtr, const upbc::DefPoolPair&, absl::string_view, const NameToFieldDefMap&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:605:48,
    inlined from ‘void upbc::{anonymous}::GenerateMessageInHeader(upb::MessageDefPtr, const upbc::DefPoolPair&, const upbc::{anonymous}::Options&, upbc::Output&)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:816:20:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)’ writing 16 bytes into a region of size 1 overflows the destination [-Werror=stringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function ‘void* memcpy(void*, const void*, size_t)’,
    inlined from ‘void _upb_MiniTable_CopyFieldData(void*, const void*, const upb_MiniTableField*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:119:13,
    inlined from ‘void _upb_Message_SetNonExtensionField(upb_Message*, const upb_MiniTableField*, const void*)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upb/message/accessors_internal.h:244:31,
    inlined from ‘void google_protobuf_compiler_CodeGeneratorResponse_set_supported_features(google_protobuf_compiler_CodeGeneratorResponse*, uint64_t)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/stage0/google/protobuf/compiler/plugin.upb.h:427:36,
    inlined from ‘void upbc::Plugin::ReadRequest()’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/plugin.h:185:5,
    inlined from ‘upbc::Plugin::Plugin()’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/plugin.h:83:25,
    inlined from ‘int main(int, char**)’ at /home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:1710:16:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:33: error: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ reading 16 bytes from a region of size 8 [-Werror=stringop-overread]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc: In function ‘int main(int, char**)’:
/home/dzenan/zarr/ts-rel/_deps/upb-src/upbc/protoc-gen-upb.cc:1708:5: note: source object ‘value’ of size 8
 1708 | int main(int argc, char** argv) {
      |     ^~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics
cc1plus: all warnings being treated as errors
ninja: build stopped: cannot make progress due to previous errors.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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