Forum
Tipps
News
Menu-Icon

Umgehung für Fehler im GNU Fortran 95 Compiler

Ekliger Fehler. Ich habe ein paar ganz harmlose Zeilen in ein Programm eingefügt und es lief nicht mehr. Daraufhin habe ich die Zeilen übersprungen (einfach Goto davor gesetzt). Es änderte sich aber nichts. Es lief nicht mehr.

Die Ursache liegt in einem Compilerfehler im Zusammenhang mit der Speicherverwaltung der Variablen. Muss ein sehr sporadisches Problem sein. Sonst wäre mir das schon viel früher aufgefallen.

Die Umgehung geht folgendermaßen:
1) Alle nicht explizit deklarierten Variablen deklarieren. Für die Übersichtlichkeit ist es geraten, die neuen Deklarationen in einem eigenen Block zusammenzufassen.
2) Allen deklarierten Variablen, die nicht in der Dummy-Argument-Liste oder in einem Common vorkommen, einen Anfangswert zuweisen.

1) allein genügt nicht. Danach lief bei mir ein Programm nicht mehr, das vorher noch einwandfrei lief.

Um die undefinierten Variablen zu finden, kann man sich eines kleinen Tricks bedienen: Man kommentiert alle implicit-Anweisungen aus, läßt sie aber im Programm.Sonst weiß man nachher nicht mehr, welchen Typ die Variablen vorher hatten. Dann macht man eine neue Anweisung rein:

      implicit logical (a-z) oder
      implicit logical (a-z,$), je nachdem, ob man das $-Zeichen erlaubt hat, oder nicht.

Wenn man jetzt übersetzt, dann bekommt man Fehlermeldungen für praktisch alle undeklarierten Variablen.

Man muß allerdings noch auf Variablen achten, die in Common oder in der Dummy-Argument-Liste liegen. Werden diese nur weitergereicht und waren sie vorher nicht deklariert, dann haben sie jetzt unter Umständen den falschen Variablentyp "Logical".


Antworten zu Umgehung für Fehler im GNU Fortran 95 Compiler:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Habe gerade dazugelernt, dass das Verhalten normal ist. Um es zu verhindern, muss man folgende Schreibweise wählen:

      integer, save :: variable,...

Das ändert aber nichts am Problem. Nur an der Überschrift. ;)


« Programm automatisieren (z.B. VBScript)Suche Beispiel, wie man Schriften im Programm aufrufen kann. »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Internet-Zugriffsprogramm
Ein Internet-Zugriffsprogramm, auch Browser genannt, stellt Internetseiten für den Benutzer dar. Am bekanntesten ist der Microsoft Internet Explorer, gefolgt vom kos...

Programm
Siehe Software...

Type 1 Schriften
Type 1 ist ein Schriftformat, das die Schrift-Beschreibung in Form von PostScript-Befehlen speichert. PostScript-Schriften werden mithilfe von PostScript-Operationen besc...