在C ++标准N4618 / [temp.deduct](§14.8.2)中,以下示例(§14.8.2/ 7)演示了如何以词法顺序执行模板参数替换:
hello();
我还希望在声明内容之前评估require-clauses内容。我希望以下修改不会产生任何编译错误:
run
实际上GCC告诉我仍然有错误。这是TS概念中陈述的行为吗?
答案 0 :(得分:2)
是。请参阅N4630 [temp.deduct] / 5中的注释:
与功能相关的约束(14.10)的满足 在重载解析期间确定模板特化 (13.3),而不是替代点。