遇到一个问题,有些函数明明在文件里有,但是在sourceinsight的函数栏看不到,或者点击函数应该跳转到函数定义处的地方去,结果跳转到了函数申明的地方,用起来很不方便。今天查了一下,原因是有些函数前面加了:
#ifdef _ADCISR_RAM_
__attribute__((ramfunc))
#endif
这是让该函数加载到RAM上去。
我们的sourceinsight默认的是没有识别__attribute__这个关键词的,因此会解析不到这个函数。
解决办法:
在sourceinsight安装的地方,我的是C:\Program Files (x86)\Source Insight 3,找到C.tom文件,打开,在后面加上一段
;For __attribute__
__attribute__(type)
然后就可以了,再打开之前的project,重新加载一下,就可以顺利解析了。