即使经过深入研究,我也找不到答案。 我正在编译Android ARM64内核,并在此文件中
的驱动/杂项/ QCOM / qdsp6v2 / audio_amrwbplus
我有这些界限:
119 static long audio_ioctl(struct file *file, unsigned int cmd,
120 unsigned long arg)
121 {
122 struct q6audio_aio *audio = file->private_data;
123 int rc = 0;
...
抛出此错误:
drivers/misc/qcom/qdsp6v2/audio_amrwbplus.c: In function 'audio_ioctl_shared':
drivers/misc/qcom/qdsp6v2/audio_amrwbplus.c:121:13: error: invalid storage
class for function 'audio_ioctl'
static long audio_ioctl(struct file *file, unsigned int cmd,
^
drivers/misc/qcom/qdsp6v2/audio_amrwbplus.c:121:1: warning: ISO C90 forbids
mixed declarations and code [-Wdeclaration-after-statement]
error, forbidden warning: audio_amrwbplus.c:121
我正在使用GCC 7.x和5.x进行编译,结果相同
我也试图设置
-Wno-declaration-after-statement
进入Makefile,没有运气
答案 0 :(得分:0)
对于遇到(同类)问题的每个人,这都是解决方案。
问题不在于编译器告诉我的那些线,而是(在同一个文件中)之前的一些线。这只是一些奇怪的放置括号,后面的代码搞乱了。
如果你有这样的东西,试着深入搜索同一个文件,你可能会发现一些错误的逻辑错误。