Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

exec/async_scope.hpp: "invalid use of void expression" in on_empty() with nvcc 12.9 and gcc-12 host compiler

未關閉
#2,304 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 1 天內回覆

還沒有人認領這個 Issue。

評估

難度
3/5
預估耗時
1-2 天
新手友好度
54/100
Issue 類型
缺陷
描述清晰度
基本清楚
活躍度
活躍
技術堆疊
cpp
領域
compilers

研究方向

Start by reading exec/async_scope.hpp around lines 823–825, especially on_empty(), and compare the related inline_scheduler fix in #2288. Run the standalone repro.cu compile command with nvcc 12.9 and gcc-12 to confirm the failure. Done means establishing whether this compiler combination is supported and whether the issue can be resolved in async_scope.hpp.

由索引模型根據 Issue 內容生成。

描述

Including <exec/async_scope.hpp> fails to compile under nvcc with gcc-12 as the host compiler. We observed this in HPX's CUDA CI, where a .cu test pulls in the header through hpx/execution.hpp.

Environment

  • nvcc: CUDA 12.9
  • host compiler: gcc-12
  • stdexec: main

Error
exec/async_scope.hpp:823-825
return when_empty(just());
error: invalid use of void expression

Observed in

Standalone repro (not yet verified outside HPX CI)
// repro.cu
#include <exec/async_scope.hpp>
int main() {}

nvcc -std=c++20 -ccbin g++-12 -I<stdexec>/include -c repro.cu

Notes

  • The same error on this line was reported as GCC bug 114393, so this may be a gcc-12 front-end problem that nvcc exposes.
  • A similar nvcc failure in inline_scheduler (#2284) was fixed with a CUDACC guard in #2288. This looks like a separate problem in async_scope.

Questions

  • Is nvcc with gcc-12 a supported combination for exec/async_scope.hpp?
  • Would a CUDACC guard or a workaround in on_empty() (for example an explicit return type) be acceptable, as in #2288?
主要語言
C++
星號
2.5k
分支
281
平均合併
1 天 21 小時
30 天內合併 PR
52

環境準備

這個專案沒有提供開發容器、Dockerfile 或貢獻指南,環境需要你自己搭建:先看它的 README,通用步驟見我們的新手貢獻指南。

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

NVIDIA/stdexec 的其他 Issue

查看 NVIDIA/stdexec 的全部 Issue

相似的 Issue

更多 C++ Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。