Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build regression with GCC 14 when moving to libmamba 2.0.4 #3666

Closed
3 tasks done
dannf opened this issue Dec 8, 2024 · 3 comments · Fixed by #3669
Closed
3 tasks done

Build regression with GCC 14 when moving to libmamba 2.0.4 #3666

dannf opened this issue Dec 8, 2024 · 3 comments · Fixed by #3669

Comments

@dannf
Copy link
Contributor

dannf commented Dec 8, 2024

Troubleshooting docs

  • My problem is not solved in the Troubleshooting docs

Anaconda default channels

  • I do NOT use the Anaconda default channels (pkgs/* etc.)

How did you install Mamba?

Other (please describe)

Search tried in issue tracker

maybe-uninitialized

Latest version of Mamba

  • My problem is not solved with the latest version

Tried in Conda?

Not applicable

Describe your issue

libmamba 2.0.4 no longer builds with GCC 14, as observed using wolfi-os's toolchain. See the error below. This is a regression from 2.0.3, and was introduced by commit 0a8128d. Of course, we can work around this by adding -Wno-error=maybe-uninitialized to CXXFLAGS. But perhaps this should be added upstream so that each impacted downstream needn't work around this independently.

2024/12/08 15:35:57 WARN ninja: job failed: /usr/local/bin/c++ -DFMT_SHARED -DLIBMAMBA_EXPORTS -DMAMBA_USE_INSTALL_PREFIX_AS_BASE -DSIMDJSON_THREADS_ENABLED=1 -DSPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_TRACE -DSPDLOG_FMT_EXTERNAL -Dlibmamba_dyn_EXPORTS -I/home/build/libmamba/include -I/home/build/libmamba/src -I/home/build/libmamba/ext/solv-cpp/include -isystem /usr/share -fPIC -O3 -DNDEBUG -fPIC -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wold-style-cast -Wcast-align -Wunused -Woverloaded-virtual -Wpedantic -Wconversion -Wsign-conversion -Wnull-dereference -Wdouble-promotion -Wformat=2 -Wunreachable-code -Wuninitialized -Werror -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wuseless-cast -MD -MT libmamba/CMakeFiles/libmamba-dyn.dir/src/download/curl.cpp.o -MF libmamba/CMakeFiles/libmamba-dyn.dir/src/download/curl.cpp.o.d -o libmamba/CMakeFiles/libmamba-dyn.dir/src/download/curl.cpp.o -c /home/build/libmamba/src/download/curl.cpp uses=cmake/build
2024/12/08 15:35:57 INFO     inlined from 'void std::iter_swap(_ForwardIterator1, _ForwardIterator2) [with _ForwardIterator1 = char*; _ForwardIterator2 = char*]' at /usr/include/c++/14/bits/stl_algobase.h:185:11, uses=cmake/build
2024/12/08 15:35:57 INFO     inlined from '_ForwardIterator2 std::swap_ranges(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2) [with _ForwardIterator1 = char*; _ForwardIterator2 = char*]' at /usr/include/c++/14/bits/stl_algobase.h:215:16, uses=cmake/build
2024/12/08 15:35:57 INFO     inlined from 'void std::array<_Tp, _Nm>::swap(std::array<_Tp, _Nm>&) [with _Tp = char; long unsigned int _Nm = 256]' at /usr/include/c++/14/array:127:25, uses=cmake/build
2024/12/08 15:35:57 INFO     inlined from 'std::__enable_if_t<((bool)typename std::__array_traits<_Tp, _Nm>::_Is_swappable::value)> std::swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&) [with _Tp = char; long unsigned int _Nm = 256]' at /usr/include/c++/14/array:379:17, uses=cmake/build
2024/12/08 15:35:57 INFO     inlined from 'mamba::download::CURLHandle::CURLHandle(mamba::download::CURLHandle&&)' at /home/build/libmamba/src/download/curl.cpp:253:18: uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[1]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO   221 |       _Tp __tmp = _GLIBCXX_MOVE(__a); uses=cmake/build
2024/12/08 15:35:57 INFO       |           ^~~~~ uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[2]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[3]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[4]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[5]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[6]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[7]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[8]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[9]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[10]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[11]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[12]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[13]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[14]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[15]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO /usr/include/c++/14/bits/move.h:221:11: error: '((__vector(16) char*)this)[16]' may be used uninitialized [-Werror=maybe-uninitialized] uses=cmake/build
2024/12/08 15:35:57 INFO cc1plus: all warnings being treated as errors uses=cmake/build
2024/12/08 15:36:11 WARN ninja: subcommand failed uses=cmake/build

mamba info / micromamba info

No response

Logs

No response

environment.yml

No response

~/.condarc

No response

@JohanMabille
Copy link
Member

But perhaps this should be added upstream so that each impacted downstream needn't work around this independently.

Yes, definitely. Thanks for reporting.

@jjerphan
Copy link
Member

jjerphan commented Dec 9, 2024

@dannf: can you let us know if #3669 fixes the problem?

@dannf
Copy link
Contributor Author

dannf commented Dec 9, 2024

@dannf: can you let us know if #3669 fixes the problem?

It did, thank you @jjerphan and @JohanMabille !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants