【问题标题】:Activating C++11 support in Clang在 Clang 中激活 C++11 支持
【发布时间】:2011-10-24 11:57:03
【问题描述】:

我已经下载并构建了 clang 3.0 版,以便尝试使用 C++11 功能,但是我得到了这个错误(即使我 am 使用了-Wc++11-extensions 标志) .

S:\llvm\code>clang++.exe -Wc++11-extensions variadic.cpp
variadic.cpp:4:19:警告:variadic 模板是 C++11 扩展 [-Wc++11-extensions]
模板

我在 Windows 7(64 位)上使用 VS10 构建了 clang,构建成功通过。


编辑:正如@cli_hlt 指出的,这是一个警告而不是错误,错误是我没有粘贴的内容无法执行命令:程序不可执行。根本原因是 link.exe 不在 PATH 中。一旦我从 VS 命令提示符运行,一切都很好。

【问题讨论】:

  • 我假设您最初是 clang++ variadic.cpp,看到了警告并添加了警告标志,期望警告消失。 -Wc++11-extensions 在 C++03 模式(默认模式)下编译时默认打开,所以这就是你看到它的原因。您可以使用 -Wno-c++11-extensions 将其关闭,但最好使用 -std=c++11 在 C++11 模式下编译
  • @bames53 谢谢这正是发生的事情。

标签: c++ c++11 clang


【解决方案1】:

您收到的是警告,而不是错误。

-W 开关用于启用编译器警告。因此,据我了解,通过使用 -Wc++11-extensions 可以告诉编译器在您使用 C++11 扩展时发出警告。

这正是这里发生的事情。

【讨论】:

  • 对,我是个白痴。警告之后是错误“无法执行命令:程序不可执行”,但即使int main() { } 也会发生这种情况。我的坏..
猜你喜欢
  • 2011-12-20
  • 1970-01-01
  • 2012-11-01
  • 2015-03-01
  • 2012-05-23
  • 2023-03-08
  • 1970-01-01
  • 2012-06-06
  • 2015-03-21
相关资源
最近更新 更多