Autor Beitrag
MitschL
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 211

Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
BeitragVerfasst: Do 13.01.05 12:30 
Moin,

ich habe ein etwas irritierendes Problem. Ich darf meinen Code nur zum Einchecken abliefern, wenn nicht mal mehr Hinweise vom Compiler auftauchen.
Warum kommt dieser:

[Hinweis] UMain.pas(3143): Auf 'success' zugewiesener Wert wird niemals benutzt

bei:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
begin
  success := Read_CmdLine();
  success := success and Read_Configuration();

  if not success then
    Release();
end;


Ich nutze doch den auf success zugewiesenen Wert?

gegrüßt!
MitschL
st-matze
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 138

Win 3.11, Win 95, Win 98, Win XP
D7 Ent, D6 Pers, (D5 Pers)
BeitragVerfasst: Do 13.01.05 12:36 
innerhald des codeschnipseln kommt die meldung bei mir nicht.

in welcher zeile tritt die meldung denn auf?!?
MitschL Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 211

Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
BeitragVerfasst: Do 13.01.05 13:11 
Tja,

der Cursor steht am Anfang der Zeile
ausblenden Delphi-Quelltext
1:
  success := Read_CmdLine();					


der Rest hat nichts mit success zu tun
ausblenden Delphi-Quelltext
1:
  Show_View( UMain.PROGRAMMSTART );					

steht davor und danach kommt:
ausblenden Delphi-Quelltext
1:
  Determine_Next_View();					


Hat er etwa ein Problem damit, daß ich den Wert danach gleich ändere? - oder die Art, wie ich das tue? Hm.

gegrüßt!
MitschL



[edit] Interessanterweise kommt die Meldung nur, wenn ich weitere Hinweismeldungen habe - zuletzt waren ungenutzte Variablen dabei (, weil der Code noch nicht fertig ist).
UC-Chewie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 531

WinXP
D5 Ent
BeitragVerfasst: Do 13.01.05 14:33 
Du setzt Success auf einen Wert und danach setzt du die Variable nochmal, ohne den Wert zu benutzen. Das ist, was der Compiler meint.

Und das hier:
Zitat:
[edit] Interessanterweise kommt die Meldung nur, wenn ich weitere Hinweismeldungen habe - zuletzt waren ungenutzte Variablen dabei (, weil der Code noch nicht fertig ist).


Der Grund wird wohl weniger sein, dass andere Hinweise auftauchen, sondern eher der, dass du die Datei geändert hast und sie deswegen neu kompiliert wird. Wenn eine Datei nicht verändert wird, wird sie von der IDE auch nicht autoamtisch neu kompiliert.

_________________
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
IngoD7
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 629


D7
BeitragVerfasst: Do 13.01.05 14:45 
MitschL hat folgendes geschrieben:

[edit] Interessanterweise kommt die Meldung nur, wenn ich weitere Hinweismeldungen habe - zuletzt waren ungenutzte Variablen dabei (, weil der Code noch nicht fertig ist).

Im Gegensatz zu UC-Chewie bin ich der Meinung, dass das der springende Punkt sein könnte. Die Meldungen sollten immer von oben abgearbeitet werden, da man nach Beseitigung einer Meldung oben auch gleich mehrere unten vernichtet haben kann.

Dass success nach der Zuweisung sofort wieder eine erhält, ist hier kein Meldungsgrund, da es selber (auch) Argument in der zweiten Zuweisung ist. Dann würde analog ja auch
ausblenden Delphi-Quelltext
1:
2:
i:=5;
i:=i+2;
eine Meldung hervorrufen müssen. Tut es ebensowenig.
MitschL Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 211

Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
BeitragVerfasst: Do 13.01.05 14:49 
Die Variable wird sehr wohl gelesen: Die Zeile 3 des oben angeführten Codes hat neben dem Schreiben auch ein Lesen der Variablen.

UC-Chewie hat folgendes geschrieben:
Der Grund wird wohl weniger sein, dass andere Hinweise auftauchen, sondern eher der, dass du die Datei geändert hast und sie deswegen neu kompiliert wird. Wenn eine Datei nicht verändert wird, wird sie von der IDE auch nicht autoamtisch neu kompiliert.

Hm. Erstaunlich. Der besagte Compiler-Hinweis war den ganzen Vormittag über ersichtlich. Dabei gab es mehrere Kompilate. Als letztes habe ich noch diesen Hinweis und zwei weitere über ungenutzte Variablen in einer anderen Prozedur gehabt. Als ich die Variablen vorhin ausmarkierte, war es dem Compiler wohl nicht mehr dieser eine Hinweis wert, oder wie stelle ich mir das jetzt vor?

Naja. Der Hinweis ist verschwunden. Ich hoffe mal, daß er sich beim Einchecken nicht wieder zeigt.

gegrüßt!
MitschL

[edit] Im Zweifelsfalle ist immer der Anwender schuld... Hm. Verdammt!