如何解决解析器生成器返回的变量的GCC类型警告?

问题描述

我希望Packcc解析器生成器“ $ 0s”或“ $ 0e”变量在解析器操作中引发int,因为这些变量代表输入中的位置。

我做了一个最小的解析器,用于打印单词的最后一个字符的位置。

word <- [a-z]+[\n]    {printf("Position %i\n",$0e);}

%%

int main()
{
    pcc_context_t *ctx = pcc_create(NULL);
    while(pcc_parse(ctx,NULL));
    pcc_destroy(ctx);
    return 0;
}

使用“ packcc”命令生成解析器后,我编译C生成文件,然后Gcc发送此警告。

warning: type defaults to 'int' in type name [-Wimplicit-int]

谢谢。

解决方法

这看起来像是该版本的packcc解析器生成器中的错误。现在它已成为fixed的主人,因此请尝试升级。

或者您可以简单地忽略警告,因为该类型的确应为int