yugabyte / yugabyte-db

YugabyteDB - the cloud native distributed SQL database for mission-critical applications.
https://www.yugabyte.com
Other
8.93k stars 1.06k forks source link

error: array subscript -8 is outside array bounds of ‘std::string [1]’ on GCC 10 #7281

Open rtsisyk opened 3 years ago

rtsisyk commented 3 years ago
/-------------------------------------------------------------------------------                                         
| COMPILATION FAILED                                                                                                     
|-------------------------------------------------------------------------------                                         
In file included from src/yb/rocksdb/slice_transform.h:34,                                                               
                 from src/yb/rocksdb/util/slice_transform_test.cc:24:                                                    
src/yb/util/slice.h: In member function ‘virtual void rocksdb::SliceTransformTest_CapPrefixTransform_Test::TestBody()’:  
src/yb/util/slice.h:63:57: error: array subscript -8 is outside array bounds of ‘std::string [1]’ {aka ‘std::__cxx11::bas
ic_string<char> [1]’} [-Werror=array-bounds]                                                                             
   63 |   Slice(const uint8_t* d, size_t n) : begin_(d), end_(d + n) {}                                                  
      |                                                       ~~^~~                                                      
In file included from thirdparty/installed/uninstrumented/include/gtest/gtest.h:1874,                                    
                 from src/yb/rocksdb/util/testharness.h:28,                                                              
                 from src/yb/rocksdb/table/mock_table.h:41,                                                              
                 from src/yb/rocksdb/db/db_test_util.h:61,                                                               
                 from src/yb/rocksdb/util/slice_transform_test.cc:26:                                                    
src/yb/rocksdb/util/slice_transform_test.cc:60:46: note: while referencing ‘<anonymous>’                                 
   60 |   ASSERT_EQ(transform->Transform(std::string()).ToString(), "");                                                 
      |                                              ^                                                                   
In file included from src/yb/rocksdb/slice_transform.h:34,
                 from src/yb/rocksdb/util/slice_transform_test.cc:24:
src/yb/util/slice.h:63:57: error: array subscript -16 is outside array bounds of ‘std::string [1]’ {aka ‘std::__cxx11::ba
sic_string<char> [1]’} [-Werror=array-bounds]
   63 |   Slice(const uint8_t* d, size_t n) : begin_(d), end_(d + n) {}
      |                                                       ~~^~~
In file included from thirdparty/installed/uninstrumented/include/gtest/gtest.h:1874,
                 from src/yb/rocksdb/util/testharness.h:28,
                 from src/yb/rocksdb/table/mock_table.h:41,
                 from src/yb/rocksdb/db/db_test_util.h:61,
                 from src/yb/rocksdb/util/slice_transform_test.cc:26:
src/yb/rocksdb/util/slice_transform_test.cc:60:46: note: while referencing ‘<anonymous>’
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/10/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.1 20201125 (Red Hat 10.2.1-9) (GCC) 
g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/10/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.1 20201125 (Red Hat 10.2.1-9) (GCC)
rtsisyk commented 3 years ago

Update: it was GCC 10 installed via dnf install gcc gcc-c++ on Fedora 33.