【发布时间】:2014-05-11 20:47:40
【问题描述】:
CUDA 文件中有一些 C++ 代码使用了这个 pragma:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-result"
void foobar()
{
// some code
}
#pragma GCC diagnostic pop
当使用 CUDA 5.5 nvcc 编译器编译此 CUDA 文件时,主机编译器阶段很好,但设备编译器阶段会产生以下警告:
foobar.cu(420): warning: unrecognized GCC pragma
看起来 CUDA 编译器理解这是一个 GCC 编译指示。我不知道为什么它试图理解所有 GCC 编译指示。有什么方法可以修复此警告或使此警告消失?
更新:请注意,将 -Xcudafe "--diag_suppress=unrecognized_pragma" 选项传递给 nvcc 编译器似乎没有任何效果。
【问题讨论】:
标签: cuda compiler-warnings nvcc