boostorg / boostorg/fiber

Boost.Fiber header compile fails with GCC Compile option -Werror=conversion

Aperta
#298 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
510
Fork
123
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hello!
I'm creating this issue just raise awareness about what happens when compiling Boost.Fiber headers along with the GCC flag `-Werror=conversion`.
It may or not be important for the community. For me it is, given the compilation restrictions which I'm applying to my project.
```
[build] /usr/bin/g++ -DBOOST_STACKTRACE_ADDR2LINE_LOCATION=\"/usr/bin/addr2line\" -DBOOST_STACKTRACE_LINK -DBOOST_STACKTRACE_USE_ADDR2LINE -DBOOST_STACKTRACE_USE_BACKTRACE -DBOOST_STACKTRACE_USE_NOOP -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -I/home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include -I/home/claymore/.conan/data/spdlog/1.10.0/_/_/package/0ad8763f0289ded6e39ff258ec01c35b1aac6aa2/include -I/home/claymore/.conan/data/zlib/1.2.12/_/_/package/d13c97721d7bdc192ca6529684f2b79beeae8a7c/include -I/home/claymore/.conan/data/bzip2/1.0.8/_/_/package/ad18e1e856ff78d73ad6f3c9a214f85abf2d0550/include -I/home/claymore/.conan/data/libbacktrace/cci.20210118/_/_/package/d13c97721d7bdc192ca6529684f2b79beeae8a7c/include -I/home/claymore/.conan/data/fmt/8.1.1/_/_/package/0d8b943d676dc202f180a2598d04457e173d7b97/include -I/home/claymore/Desktop/CppServiceBootstrap/src/include -g -DSPDLOG_FMT_EXTERNAL -DSPDLOG_COMPILED_LIB -DBOOST_STACKTRACE_ADDR2LINE_LOCATION=\"/usr/bin/addr2line\" -DBOOST_STACKTRACE_USE_ADDR2LINE -DBOOST_STACKTRACE_USE_BACKTRACE -DBOOST_STACKTRACE_USE_NOOP -Winvalid-pch -pedantic-errors -Wall -Wextra -Wformat=2 -Wformat-signedness -Wformat-truncation=2 -Wformat-overflow=2 -Wconversion -Wfatal-errors -Wdouble-promotion -Wfloat-equal -Werror=cast-qual -Werror=cast-align -Werror=overflow -Werror=conversion -Werror=nonnull -Werror=nonnull-compare -Werror=null-dereference -Werror=init-self -Werror=uninitialized -Werror=invalid-memory-model -fno-stack-protector -fno-pie -rdynamic -O0 -ggdb3 -fno-inline -ftest-coverage --coverage -fsanitize=thread -fsanitize=shift -fsanitize=shift-exponent -fsanitize=shift-base -fsanitize=integer-divide-by-zero -fsanitize=unreachable -fsanitize=vla-bound -fsanitize=null -fstack-protector-all -fstack-clash-protection -std=gnu++20 -MD -MT CMakeFiles/CppServiceBootstrap.dir/src/executable/CppServiceBootstrap.cpp.o -MF CMakeFiles/CppServiceBootstrap.dir/src/executable/CppServiceBootstrap.cpp.o.d -o CMakeFiles/CppServiceBootstrap.dir/src/executable/CppServiceBootstrap.cpp.o -c /home/claymore/Desktop/CppServiceBootstrap/src/executable/CppServiceBootstrap.cpp
[build] In file included from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/detail/spinlock_ttas_adaptive_futex.hpp:18,
[build] from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/detail/spinlock.hpp:19,
[build] from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/detail/data.hpp:13,
[build] from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/context.hpp:37,
[build] from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/algo/round_robin.hpp:16,
[build] from /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/all.hpp:11,
[build] from /home/claymore/Desktop/CppServiceBootstrap/src/executable/CppServiceBootstrap.cpp:8:
[build] /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/detail/futex.hpp: In function ‘int boost::fibers::detail::sys_futex(void*, int32_t, int32_t)’:
[build] /home/claymore/.conan/data/boost/1.79.0/_/_/package/1671931156455a119d7c3f14d951ac5fdbc5cd10/include/boost/fiber/detail/futex.hpp:35:21: error: conversion from ‘long int’ to ‘int’ may change value [-Werror=conversion]
[build] 35 | return ::syscall( SYS_futex, addr, op, x, nullptr, nullptr, 0);
[build] | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] compilation terminated due to -Wfatal-errors.
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.