Oberon Community Platform Forum
December 16, 2019, 02:58:32 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: ActiveOberon language report & Untraced  (Read 4956 times)
BohdanT
Sr. Member
****
Posts: 271


Life is difficult, but fortunately is short!


WWW
« on: November 08, 2010, 02:36:49 PM »

Quote from: Active Oberon Language Report
Untraced Pointers

Untraced pointers are pointers that are not traversed by the garbage collector. A structure or object referenced only through an untraced pointer may be collected at any time.

Untraced pointers are defined using the UNTRACED modifier.

TYPE  Untraced = POINTER {UNTRACED} TO T;

but if you try to compile:
Code:
MODULE Untraced;

TYPE
T = RECORD
 a,b:LONGINT;
END;
Untraced = POINTER{UNTRACED} TO T;

END Untraced.

We get the error message

PC.Compile Untraced.Mod~
Quote
Untraced.Mod compiling Untraced ... not done
   Untraced.Mod@72   error 28:   TO missing
   Untraced.Mod@72   error 40:   identifier expected
   Untraced.Mod@72   error 52:   identifier does not denote a type
   Untraced.Mod@72   error 57:   pointer not bound to record or array type
   Untraced.Mod@72   error 41:   ";" missing
   Untraced.Mod@72   error 43:   END missing
   Untraced.Mod@72   error 43:   END missing
   Untraced.Mod@72   error 40: Untraced  identifier expected
Compiler.Compile Untraced.Mod~
Quote
   Untraced.Mod@73   error 264: illegaly marked identifier
   Untraced.Mod   A2.Untraced could not be compiled (checker errors).
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!