Compilerfehler? (was: Abnormales Programmende) Kategorie: Programmierung (von Joerg Pohl, http://www.jpohl.de - 10.11.2002 15:16) | |
Als Antwort auf Re: Abnormales Programmende von Joerg Pohl - 10.11.2002 11:12
| |
Hallo, es wird immer verrückter. Kann es sein, dass der Compiler unter bestimmten Umständen fehlerhaften Code produziert? Zur Fehlersuche im weiter oben erwähnten Programm habe ich aus einer Schleife do { ... } while (iReturn > 2); eine Endlosschleife gemacht: do { ... } while 1; Das restliche Programm blieb unverändert. Jedoch scheint bei der Abarbeitung der Schleifenteil nicht oder nur teilweise ausgeführt zu werden, der Rücksprung (while) erfolgt dann irgendwohin in den vorderen Programmteil (durch Ausschriften zu erkennen). �ndere ich jetzt die Endlosschleife nach loop { ... } bei sonst gleichem Programm, funktioniert alles wie es soll. Ich habe jetzt mal die Grö�en der VMC-Files verglichen (Angaben aus Zeile 3 der VMC-Files): do { ... } while (iReturn > 2) : 1184 bytes do { ... } while 1 : 1120 bytes loop { ... } : 1168 bytes Was ich nicht verstehe, dass die do {...} while 1 Variante deutlich kürzer ist, als die Endlosschleife mit loop {...} , die ja sicherlich nur aus einem Rücksprung zu einer Adresse besteht. Naja, zumindest deckt sich das ganze mit dem Fehlerbild bei der Abarbeitung. Eine mögliche Erklärung wäre, dass der Compiler hier wirklich Mist baut. BTW, dll-Version 21.12.2000. Ich habe mal versucht, die vmc-files zu vergleichen, aber die sind ziemlich unterschiedlich und ohne genauere Kenntnis der VM wahrscheinlich nicht vergleichbar. Viele Grü�e Jörg Meine Seite: http://www.jpohl.de | |
Antwort schreiben Antworten: Re: Compilerfehler? (was: Abnormales Programmende) (von André H. - 15.11.2002 12:08) Re: Compilerfehler? (was: Abnormales Programmende) (von Joerg Pohl - 16.11.2002 10:15) Re: Compilerfehler? (was: Abnormales Programmende) (von André H. - 16.11.2002 11:47) |