AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Warnung des Compilers verstehen

Ein Thema von hsg · begonnen am 22. Sep 2006 · letzter Beitrag vom 25. Sep 2006
Antwort Antwort
Seite 2 von 3     12 3      
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#11

Re: Warnung des Compilers verstehen

  Alt 22. Sep 2006, 13:13
So mache ich es auch an vielen Stellen und hab es in die entsprechende Methode auch eingebaut, die Warning bleibt aber.
  Mit Zitat antworten Zitat
rider

Registriert seit: 11. Aug 2006
90 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: Warnung des Compilers verstehen

  Alt 22. Sep 2006, 14:11
Auch wenn die falsche Compiler-Warnung ein Bug ist, solche Endlos-If-Ketten mit Stringvergleichen sind mir vom Programmcode ein wenig suspekt.
Schon mal daran gedacht, das Ganze via Enumtyp zu lösen? Dann könnte man ein performantes case-Statement verwenden.
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#13

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 06:20
Zitat von rider:
Auch wenn die falsche Compiler-Warnung ein Bug ist, solche Endlos-If-Ketten mit Stringvergleichen sind mir vom Programmcode ein wenig suspekt.
Schon mal daran gedacht, das Ganze via Enumtyp zu lösen? Dann könnte man ein performantes case-Statement verwenden.
Der Source stammt aus meinen Anfangstagen in Delphi in einem etwas größerem Projekt.
Wenn ich mal Zeit finde werde ich es umbauen. Ich war nur auf die Stelle gestossen, weil ich versucht habe, dieses Projekt Warnings-frei zu machen.

Im nächsten Leben gelobe ich Besserung
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#14

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 08:15
Hallo,

Notlösung wäre, intern in 2 Methoden aufzusplitten.


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#15

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 08:26
hmm ich komm da nu nich ganz mit.

Ich habe es mal durch meinen Codeformater gejagt und von meinem Compiler Compilieren lassen.

Delphi-Quellcode:
Function Rechte(cModul: String): String;
Begin
  If AnsiCompareText(cModul, 'Angebot') = 0 Then
    Result := 'FAngebot'
  Else If AnsiCompareText(cModul, 'Auftrag') = 0 Then
    Result := 'FAuftrag'
  Else If AnsiCompareText(cModul, 'AV') = 0 Then
    Result := 'FAV'
  Else If AnsiCompareText(cModul, 'Fertigung') = 0 Then
    Result := 'FFertigung'
  Else If AnsiCompareText(cModul, 'Einkauf') = 0 Then
    Result := 'FEinkauf'
  Else If AnsiCompareText(cModul, 'Versand') = 0 Then
    Result := 'FVersand'
  Else If AnsiCompareText(cModul, 'Reparatur') = 0 Then
    Result := 'FReparatur'
  Else If AnsiCompareText(cModul, 'Supply') = 0 Then
    Result := 'FSupply'
  Else If AnsiCompareText(cModul, 'Kunden') = 0 Then
    Result := 'FKunden'
  Else If AnsiCompareText(cModul, 'Artikel') = 0 Then
    Result := 'FLager'
  Else If AnsiCompareText(cModul, 'Projekt') = 0 Then
    Result := 'FProjekt'
  Else If AnsiCompareText(cModul, 'Zeichnung') = 0 Then
    Result := 'FZeichnung'
  Else If AnsiCompareText(cModul, 'Pruefmtl') = 0 Then
    Result := 'FPruefmtl'
  Else If AnsiCompareText(cModul, 'Iso9000') = 0 Then
    Result := 'FIso9000'
  Else If AnsiCompareText(cModul, 'System') = 0 Then
    Result := 'FSystem'
  Else If AnsiCompareText(cModul, 'Dokument') = 0 Then
    Result := 'FDok'
  Else
    Result := '';
End;
Und ich habe weder Warnung noch sonst was bekommen.

Welche Delphi ver hast du denn da zum Kompilieren genutzt ?
( Meine war D5 Prof )
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#16

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 09:06
Zitat von Corpsman:
hmm ich komm da nu nich ganz mit.

Ich habe es mal durch meinen Codeformater gejagt und von meinem Compiler Compilieren lassen.

Und ich habe weder Warnung noch sonst was bekommen.

Welche Delphi ver hast du denn da zum Kompilieren genutzt ?
( Meine war D5 Prof )
D2006 Prof und ich habe es eben noch einmal mit deinem Source probiert und bekomme die Warnung.
Wie steht denn dein Warning-Level vom Compiler? Warnungen an? "Der Rückgabewert der Funktion könnte undefiniert sein" eingeschaltet?
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#17

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 09:11
Zitat von hoika:
Hallo,

Notlösung wäre, intern in 2 Methoden aufzusplitten.


Heiko
Wäre eben nur eine Notlösung und wenn ich an der Methode noch mal Hand anlege, wird sie eh umgeschrieben (siehe weiter oben). Es ging mir nur darum die Compiler-Meldung zu verstehen, da ich keinen Grund für sie gefunden habe.

Da es scheinbar ein Bug im Compiler ist, habe ich jetzt den entsprechenden Abschnitt mittels Warning OFF/ON ausgeklammert und kann nun meinen Source wieder ohne Warnings compilieren.
  Mit Zitat antworten Zitat
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#18

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 09:12
Komisch

habe grad

Delphi-Quellcode:


Function Recht(Value: String): String;
Begin
End;

Procedure TForm1.Button1Click(Sender: TObject);
Begin
  showmessage(recht('va'));
End;
geschrieben, und normalerweise gibts da ne Fehlermeldung nur diesmal nicht ?
Miniaturansicht angehängter Grafiken
compileroptionen_119.jpg  
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#19

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 09:22
Zitat von Corpsman:
Komisch

habe grad

Delphi-Quellcode:


Function Recht(Value: String): String;
Begin
End;

Procedure TForm1.Button1Click(Sender: TObject);
Begin
  showmessage(recht('va'));
End;
geschrieben, und normalerweise gibts da ne Fehlermeldung nur diesmal nicht ?
Eine Fehlermeldung wohl eher nicht, sondern nur eine Warnung (eben die, um die es in diesem Thread geht).

Deine Warnungen sind ja wohl eingeschaltet, scheinbar gibt es dort diese Warnung noch nicht
Miniaturansicht angehängter Grafiken
optionen_103.jpg  
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#20

Re: Warnung des Compilers verstehen

  Alt 25. Sep 2006, 12:22
Hallo,

unter D6 kommt auch keine.


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz