Konvertierung durch Zuweisung

 [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

tmpcard := int;
IF tmpcard > card THEN
   (* ... *)
END;

*Da die Zuweisungskompatibilität großzügiger ist als die striktere Kompatibilität, können Kompatibilitätsprobleme auch durch vorbereitende Zuweisungen gelöst werden.
 
*Bei Zuweisungen wird (wie bei den anderen Konvertierungen) zur Laufzeit überprüft, ob der Wert des Ausdrucks im Typ der Ergebnisvariable repräsentierbar ist.
 
oberon$ cat Crash.m2
MODULE Crash;

   VAR
      negative: INTEGER;
      card: CARDINAL;

BEGIN
   negative := -1;
   card := negative;
END Crash.
oberon$ m2c -o crash Crash.m2 && crash

runtime error in module Crash at line 10:
CARDINAL/INTEGER conversion error
Abort(coredump)
oberon$ 

 [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 04.02.1999