在使用SI转VScode的时候,原代码中有大量为函数指定section的宏,且在使用那些宏定义时,输入的参数都以小数点开始。
我做过一些验证,以小数点开始的宏参数,宏后面跟着的那个函数在大纲显示以及函数跳转时都会出现异常。
如果宏参数不以小数点开头,宏后面跟着的函数 在大纲显示以及跳转时都正常。
验证的代码如下图所示
上面的代码我使用了4种宏参数,只有以小数点开始的参数,才会触发异常。
不知道有什么方法可以避免我遇到的问题。
测试代码如下:
#define MACRO(x) __attribute__((section(#x)))
MACRO(a)
int main()
{
}
MACRO(.a)
void foo_bar_1()
{
}
MACRO((.a))
void foo_bar_2()
{
}
MACRO((b.a))
void foo_bar_3()
{
}
// 使用VScode阅读代码时,宏定义的参数如果以小数点开始,则在大纲中无法正常提示 宏定义后面的函数,函数定义的跳转也会出现异常。
// 如上所示:
// 1、 MACRO 的输入参数为 a 时, 后面的 main()函数显示正常
// 2、 MACRO 的输入参数为 .a 时, 后面的 foo_bar_1()函数不正常
// 3、 MACRO 的输入参数为 (.a)时, 后面的 foo_bar_2()函数显示正常
希望能得到帮助
VSCODE是开源的