raulcd commented on PR #47733:
URL: https://github.com/apache/arrow/pull/47733#issuecomment-3376763421

   It seems we are getting ODR violations on musllinux when we enable 
`CMAKE_INTERPROCEDURAL_OPTIMIZATION`:
   ```c++
   ninja: job failed: : && /usr/bin/c++ -fPIC -Wno-noexcept-type -Wno-self-move 
-Wno-subobject-linkage  -fdiagnostics-color=always  -Wall 
-fno-semantic-interposition -msse4.2  -O3 -DNDEBUG -O2 -ftree-vectorize  
-flto=auto -fno-fat-lto-objects  
-Wl,--version-script=/arrow/cpp/src/arrow/symbols.map -shared 
-Wl,-soname,libarrow.so.2200 -o release/libarrow.so.2200.0.0 
src/arrow/CMakeFiles/arrow_objlib.dir/Unity/unity_3_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_objlib.dir/Unity/unity_2_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_objlib.dir/Unity/unity_1_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_objlib.dir/Unity/unity_0_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_array.dir/Unity/unity_2_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_array.dir/Unity/unity_1_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_array.dir/Unity/unity_0_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_compute_core.dir/Unity/unity_3_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_compute_core.dir/Unity/unity_2_cxx.cxx.o 
src/arrow/CMakeFiles/arrow_compute_core.dir/Unity/unity_1_cxx.cx
 x.o src/arrow/CMakeFiles/arro
   /arrow/cpp/src/arrow/io/concurrency.h:162: warning: virtual table of type 
'struct RandomAccessFileConcurrencyWrapper' violates one definition rule [-Wodr]
   ninja: subcommand failed
     162 | class RandomAccessFileConcurrencyWrapper : public RandomAccessFile {
         | 
   /arrow/cpp/src/arrow/io/concurrency.h:162:7: note: the conflicting type 
defined in another translation unit
     162 | class RandomAccessFileConcurrencyWrapper : public RandomAccessFile {
         |       ^
   /arrow/cpp/src/arrow/io/interfaces.cc:108: note: virtual method 'io_context'
     108 | const IOContext& Readable::io_context() const { return 
default_io_context(); }
         | 
   <built-in>: note: ought to match virtual method '__cxa_pure_virtual' but 
does not
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: warning: virtual table of 
type 'struct VarLengthListLikeBuilder' violates one definition rule [-Wodr]
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: note: the conflicting type 
defined in another translation unit
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:241:16: note: virtual method 
'UnsafeAppendEmptyDimensions'
     241 |   virtual void UnsafeAppendEmptyDimensions(int64_t num_values) {
         |                ^
   <built-in>: note: ought to match virtual method '__cxa_pure_virtual' but 
does not
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: warning: virtual table of 
type 'struct VarLengthListLikeBuilder' violates one definition rule [-Wodr]
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: note: the conflicting type 
defined in another translation unit
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:241:16: note: virtual method 
'UnsafeAppendEmptyDimensions'
     241 |   virtual void UnsafeAppendEmptyDimensions(int64_t num_values) {
         |                ^
   <built-in>: note: ought to match virtual method '__cxa_pure_virtual' but 
does not
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: warning: virtual table of 
type 'struct VarLengthListLikeBuilder' violates one definition rule [-Wodr]
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: note: the conflicting type 
defined in another translation unit
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:241:16: note: virtual method 
'UnsafeAppendEmptyDimensions'
     241 |   virtual void UnsafeAppendEmptyDimensions(int64_t num_values) {
         |                ^
   <built-in>: note: ought to match virtual method '__cxa_pure_virtual' but 
does not
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: warning: virtual table of 
type 'struct VarLengthListLikeBuilder' violates one definition rule [-Wodr]
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:46:7: note: the conflicting type 
defined in another translation unit
      46 | class VarLengthListLikeBuilder : public ArrayBuilder {
         |       ^
   /arrow/cpp/src/arrow/array/builder_nested.h:241:16: note: virtual method 
'UnsafeAppendEmptyDimensions'
     241 |   virtual void UnsafeAppendEmptyDimensions(int64_t num_values) {
         |                ^
   <built-in>: note: ought to match virtual method '__cxa_pure_virtual' but 
does not
   /usr/include/fortify/stdio.h: In function '__to_xstring.constprop':
   /usr/include/fortify/stdio.h:73:28: error: inlining failed in call to 
'always_inline' 'vsnprintf': function body can be overwritten at link time
      73 | _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, 
size_t __n,
         |                            ^
   /usr/include/c++/13.2.1/ext/string_conversions.h:113:32: note: called from 
here
     113 |       const int __len = __convf(__s, __n, __fmt, __args);
         |                                ^
   make: *** [/tmp/ccICEbbk.mk:362: /tmp/ccGClDbC.ltrans120.ltrans.o] Error 1
   make: *** Waiting for unfinished jobs....
   lto-wrapper: fatal error: make returned 2 exit status
   compilation terminated.
   
/usr/lib/gcc/x86_64-alpine-linux-musl/13.2.1/../../../../x86_64-alpine-linux-musl/bin/ld:
 error: lto-wrapper failed
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to