使用VScode阅读代码时,宏定义的参数如果以小数点开始,则在大纲中无法正常提示 宏后面的函数,该函数跳转也会出现异常。

在使用SI转VScode的时候,原代码中有大量为函数指定section的宏,且在使用那些宏定义时,输入的参数都以小数点开始。

我做过一些验证,以小数点开始的宏参数,宏后面跟着的那个函数在大纲显示以及函数跳转时都会出现异常。
如果宏参数不以小数点开头,宏后面跟着的函数 在大纲显示以及跳转时都正常。

验证的代码如下图所示

img

上面的代码我使用了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是开源的