来自[dcl.link]#2:



该段未在函数范围内声明任何特殊情况,但以下内容也未编译:

void foo () { extern "C" int boo () ; }

从g++输出:



那是g++的bug还是我错过了什么?

最佳答案

linkage-specificationdeclaration的一部分,它是declaration-seq的一部分,可以是namespace-bodytranslation-unit的一部分。

语法中的任何地方都不允许使用block-declaration的函数,该函数与声明几乎相同,但值得注意的是缺少链接规范。

关于c++ - “extern string-literal declaration”在功能范围内,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43117798/

10-11 16:55