5

正如最近这个问题的回答所强调的那样,gcc现在支持concepts-lite从其 svn 主干构建。

同一个问题链接到最新的TS,N4377编辑- 答案有一个更新的 TS。

可以找到标记为N3580的有用论文- 这是 2013 年的论文,作者是 Andrew Sutton、Bjarne Stroustrup 和 Gabriel Dos Reis。

可以找到标记为N4434的 N4377 调整列表。这给出了对 N4377 论文的 3 处建议更改,并将其列为回复点 Walter E. Brown。

这些论文/技术规范是相似的,但在每种情况下都有各种小的变化。

是否有一些简单的方法来发现gcc当前实现的内容?或者实际上,计划实施?

作为一个附带问题:是否ConceptClang或某些类似名称的项目与 c++1z 概念相关?2015 年 5 月的邮件列表帖子收集了一些想法,特别是:

除了她的 C++0x 工作之外,Larisse 可能还为 ts 概念做了一些工作。

没有对该线程作出进一步的答复。

4

1 回答 1

4

据我了解,GCC 维护者计划按照即将发布的最终 TS 中的规定实施概念:N4549 C++ Extensions for Concepts。该规范的大部分内容是在 GCC 中实现的,除了“广义自动推导”之外,这是编译诸如std::pair<auto, auto> foo = std::make_pair(x, y);. 实现仍然非常粗糙 - 快速搜索标题中带有“[concepts]”的开放错误有 38 次点击,因此具体实现的内容和运行良好的内容每周都会发生变化。

是否ConceptClang或某些类似名称的项目与 c++1z 概念相关?

ConceptClang是(是?)C++0x 概念的实现,我相信它已经死了一段时间了。在过去的几个月里,有一些人开始考虑在 clang 中实现 Concepts TS,他们只提交了少数补丁来识别concept关键字并解析concept函数和变量声明的语法。

于 2015-10-19T06:28:54.100 回答