Replies: 3 comments 13 replies
-
这不是 bug 把,编译器都报错了,说明 c89 压根不支持 src/main.c:20:5: error: C++ style comments are not allowed in ISO C90 看错误提示, 你改成 c99 就行了。 9、但某些情况c89又能正常编译,忘了怎么触发的 没遇到过。 |
Beta Was this translation helpful? Give feedback.
-
我发现c89是支持//的。 使用以下方法稳定触发error: stray ‘\345’ in program:
2、先点vscode build编译一个文件hello(此时能编译) 反正按上述流程能触发报错,我也觉得很奇怪。。。 |
Beta Was this translation helpful? Give feedback.
-
1、这个问题我后来弄懂了,这个标准和gcc的-std=接受的参数有关 #标准c系列:可填写c89 c90 c99 …(特别注意c89和c90不支持c++风格”//”注释,且这一系列标准比gnu系列少了很多函数扩展,而且这个注释报错在mingw上和gcc报错似乎不一样但总的来说就是不支持) 2、-std=gnu90或-std=c90是可以的但我看gcc.lua里没有写?不太懂lua 3、gcc参数-std= 传入错误标准是直接会报错的,希望作者未来能给出错误提示 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Xmake 版本
2.7.4
操作系统版本和架构
centos 7.8
描述问题
按照如下步骤能稳定复现c程序的注释报错的bug:
1 、执行xmake create hello
2 、cd hello
3、xmake
4、打开xmake.lua修改为
5、把main.cpp修改为main.c
6、随意复制一个c程序,只要是带注释即可
7、发现只要带注释的行都报错,有游离的"/"
8、发现是c标准的问题,改为c90后编译bug消失
9、但某些情况c89又能正常编译,忘了怎么触发的
期待的结果
报错如下
工程配置
Beta Was this translation helpful? Give feedback.
All reactions