-
Notifications
You must be signed in to change notification settings - Fork 12
Drone patches boost to include capy #190
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -760,6 +760,12 @@ waiter_node::completion_op::operator()() | |||||||||||||||||||||||||
| sched.work_finished(); | ||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| // GCC 14 false-positive: inlining ~optional<stop_callback> through | ||||||||||||||||||||||||||
| // delete loses track that stop_cb_ was already .reset() above. | ||||||||||||||||||||||||||
| #if defined(__GNUC__) && !defined(__clang__) | ||||||||||||||||||||||||||
| #pragma GCC diagnostic push | ||||||||||||||||||||||||||
| #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" | ||||||||||||||||||||||||||
| #endif | ||||||||||||||||||||||||||
|
Comment on lines
+763
to
+768
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: # First, check if the file exists and read the relevant sections
cd /tmp/repo 2>/dev/null || cd . || true
cat -n include/boost/corosio/detail/timer_service.hpp | sed -n '760,770p'Repository: cppalliance/corosio Length of output: 486 🏁 Script executed: # Also check the second location mentioned (792-794)
cat -n include/boost/corosio/detail/timer_service.hpp | sed -n '790,800p'Repository: cppalliance/corosio Length of output: 394 🏁 Script executed: # Search for any related GCC version checks and diagnostic pragmas in the file
rg -n 'GCC|__GNUC__|pragma GCC|Wmaybe-uninitialized' include/boost/corosio/detail/timer_service.hppRepository: cppalliance/corosio Length of output: 354 🏁 Script executed: # Check if GCC version checks are used elsewhere in the codebase for similar workarounds
rg -n '__GNUC__.*>=.*14' --type cpp --type hpp | head -20Repository: cppalliance/corosio Length of output: 90 🏁 Script executed: # Check git history or comments around this pragma to understand the rationale
rg -B2 -A2 'GCC 14 false-positive' include/boost/corosio/detail/timer_service.hppRepository: cppalliance/corosio Length of output: 242 🏁 Script executed: # Check if there are other GCC version-specific compiler guards in the codebase
rg -n '__GNUC__' include/boost/corosio/ -A1 -B1 | grep -E '(__GNUC__|>|>=|<|<=)' | head -30Repository: cppalliance/corosio Length of output: 520 🏁 Script executed: # Check if GCC < 14 also has this false positive or if it's truly GCC 14 specific
rg -n 'false.positive|false-positive|workaround' include/boost/corosio/ | grep -i gccRepository: cppalliance/corosio Length of output: 181 Narrow the suppression to GCC 14+ to match the stated rationale. At lines 765 and 792, the guard currently applies to all GCC versions, but the comment explicitly states this is a "GCC 14 false positive." This can suppress legitimate Proposed patch-#if defined(__GNUC__) && !defined(__clang__)
+#if defined(__GNUC__) && !defined(__clang__) && (__GNUC__ >= 14)
`#pragma` GCC diagnostic push
`#pragma` GCC diagnostic ignored "-Wmaybe-uninitialized"
`#endif`
@@
-#if defined(__GNUC__) && !defined(__clang__)
+#if defined(__GNUC__) && !defined(__clang__) && (__GNUC__ >= 14)
`#pragma` GCC diagnostic pop
`#endif`📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||||||||||||
| inline void | ||||||||||||||||||||||||||
| waiter_node::completion_op::destroy() | ||||||||||||||||||||||||||
| { | ||||||||||||||||||||||||||
|
|
@@ -783,6 +789,9 @@ waiter_node::completion_op::destroy() | |||||||||||||||||||||||||
| if (h) | ||||||||||||||||||||||||||
| h.destroy(); | ||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||
| #if defined(__GNUC__) && !defined(__clang__) | ||||||||||||||||||||||||||
| #pragma GCC diagnostic pop | ||||||||||||||||||||||||||
| #endif | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
| inline std::coroutine_handle<> | ||||||||||||||||||||||||||
| timer_service::implementation::wait( | ||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
Uh oh!
There was an error while loading. Please reload this page.