Nicht benutzte Funktionen finden
-
Hallo NG,
auf die Gefahr hin, daß das nun nicht hier her gehört (ich wüßte aber gerade nicht wohin es sonst gehören würde) Frage ich Euch nun mal um Rat.
Ich möchte, daß der g++ mir alle Funktionen und Variablen auflistet, die nicht benutzt werden. Dazu sieht der Compiler u.a. die Optionen
-Wunused-variable
-Wunused-function
-Wunused-parameter
vor, die durch die Option
-Wunused zusammen gefaßt werden. -Wunused ist wiederum in -Wall enthalten. Aber egal was ich übergebe, zeigt mir der Compiler nichts an. Denn ich finde immer wieder Funktionen oder Variablen, die nicht benutzt werden.
Ich rufe den g++ so auf:g++ -O0 -g3 -Wall .....
Aber es tut sich nichts, auch wenn ich den Compiler so
g++ -O0 -g3 -Wunused .....
oder so
g++ -O0 -g3 -Wunused-variable -Wunused-function -Wunused-parameter .....
aufrufe. Wenn ich hinterher den Sourcecode ansehe, finde ich von Hand imernoch Funktionen, die nicht benutzt werden. Was mache ich den falsch?????Grüße und Danke,
M. Incani
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Das Problem wird schätze ich sein, dass der Compiler Dir einfach nicht alle unbenutzten Funktionen ermitteln kann, da er nur die Sichtweise auf eine Compileeinheit hat. Er kann nur ermitteln, dass einheitslokale (z.B. statische) Funktionen innerhalb der Einheit nicht gebraucht werden, und da diese ausserhalb nicht sichtbar sind ankreiden. Er kann aber nicht wissen, welche Symbole beim Linken mit anderen Objekten gebraucht werden. Das kann aber der Linker (beim gcc imho mittels der Option -s). Der linkt dann nur Sachen, die auch benutzt werden.