大多数代码编辑都知道如何将合理标准格式的file_path,line_number,message_text和超链接纳入代码。他们知道如何,因为他们显示编译器警告的方式。 Visual Studio可以做到这一点,而Source Insight对此进行配置是微不足道的。如果必须的话,我会自己编写脚本,但也许有人已经这样做了。
寻找一个采用gcc的gcov 分支 coverage输出并将其转换为该格式的脚本。
答案 0 :(得分:2)
您可以使用简单的awk脚本处理gcov的输出:
/.*:.*:/ {
split($2,tokens,":");
LINE=tokens[1];
}
/#####:/ { print FILENAME ":" LINE ": warning: Line not executed"}
/branch/ {
if ($4 == 0)
print FILENAME ":" LINE ": warning: " $0;
}
使用awk -f warn.awk main.c.gcov
运行
它会将输出转换为:
main.c.gcov:35: warning: branch 0 taken 0 (fallthrough)
main.c.gcov:37: warning: Line not executed