by Anonymous » Yesterday, 22:14
Ich möchte GCC -Fanalyzer über mehrere C -Files hinweg verwenden (
). Z.B. Angesichts des kurzen Programms < /p>
Code: Select all
#include
int get_buff(int id, int** buff)
{
static int empty[128];
switch(id)
{
case 0:
*buff = empty;
return 0;
default:
return -1;
}
}
int main()
{
int* from;
get_buff(1, &from);
int to[128];
memcpy(to, from, sizeof(to));
return 0;
}
< /code>
führt zu der folgenden Warnung mit GCC 14: < /p>
main.c:22:5: warning: use of uninitialized value ‘from’ [CWE-457] [-Wanalyzer-use-of-uninitialized-value]
Aber wenn ich Get_buff in eine separate C-Datei einfügt (in einer separaten C-Datei (
) Dann erhalte ich diese Warnung nicht, wenn ich mit GCC -Fanalyzer main.c get_buff.c kompiliert werde. Wie verwende ich -fanalyzer mit mehreren Kompilierungseinheiten?
[url=viewtopic.php?t=14917]Ich möchte[/url] GCC -Fanalyzer über mehrere C -Files hinweg verwenden ([code]*.c[/code]). Z.B. Angesichts des kurzen Programms < /p>
[code]#include
int get_buff(int id, int** buff)
{
static int empty[128];
switch(id)
{
case 0:
*buff = empty;
return 0;
default:
return -1;
}
}
int main()
{
int* from;
get_buff(1, &from);
int to[128];
memcpy(to, from, sizeof(to));
return 0;
}
< /code>
führt zu der folgenden Warnung mit GCC 14: < /p>
main.c:22:5: warning: use of uninitialized value ‘from’ [CWE-457] [-Wanalyzer-use-of-uninitialized-value][/code]
Aber wenn ich Get_buff in eine separate C-Datei einfügt (in einer separaten C-Datei ([code]get_buff.c[/code]) Dann erhalte ich diese Warnung nicht, wenn ich mit GCC -Fanalyzer main.c get_buff.c kompiliert werde. Wie verwende ich -fanalyzer mit mehreren Kompilierungseinheiten?