/* CedarExtra.h */ /* Christian Jacobi - January 28, 1988 */ /* Christian Jacobi - August 12, 1988 */ /* Contract between compiler backend and runtime */ /* Russ Atkinson - July 6, 1989 */ /* inserted pragma for XR←PushHandler */ /* Conceptional .h file as expected by compiler backend */ /* The real used .h file might implement certain procedures as macros */ #ifndef XR←C2C←runtime←version←5 #define XR←C2C←runtime←version←5 #ifdef XR←C2C←runtime←version←any an other version is defined; please crash the compiler #endif #define XR←C2C←runtime←version←any extern void XR←DebugPutChar(); extern void XR←RaiseAbstractionFault(); extern unsigned XR←RaiseBoundsFault(); extern unsigned XR←RaiseArithmeticFault(); extern unsigned XR←UnnamedError; extern unsigned XR←Unwind; extern unsigned XR←Aborted; extern unsigned XR←Uncaught; extern unsigned XR←NarrowFault; extern unsigned XR←PushHandler(); #pragma unknown←control←flow(XR←PushHandler) extern void XR←PopHandler(); extern void XR←RaiseSignal(); extern void XR←RaiseError(); extern unsigned XR←ExtensionAlloc(); extern unsigned XR←ExtensionFree(); extern void XR←Fork(); extern unsigned XR←Join(); extern void XR←Wait(); extern void XR←Notify(); extern void XR←Broadcast(); extern void XR←MonitorEntry(); extern void XR←MonitorExit(); extern void XR←MoveWords(); extern void XR←MoveWordsDisjoint(); extern unsigned XR←EqualWords(); extern void XR←MoveBytesDisjoint(); extern unsigned XR←ExtractField(); extern void XR←DepositField(); extern void XR←MoveField(); extern unsigned XR←EqualFields(); extern void XR←FillFields(); extern void XR←FillWords(); extern void XR←FillLongFields(); extern void XR←FillLongWords(); extern void XR←AssignRef(); extern void XR←AssignRefInit(); extern void XR←AssignRefComposite(); extern void XR←AssignRefCompositeInit(); extern unsigned XR←NewObject(); extern unsigned XR←Narrow(); extern unsigned XR←GetReferentType(); extern unsigned XR←CheckProc(); /* all the floating procedures have parameters and returns of type unsigned! */ /* but the bits represent reals if the appropriate LOOPHOLE's (NOT cast) would be made */ extern unsigned XR←SignedPwr(); extern unsigned XR←UnsignedPwr(); extern unsigned XR←FloatInt(); extern unsigned XR←FloatCard(); extern unsigned XR←RealNeg(); extern unsigned XR←RealAdd(); extern unsigned XR←RealSub(); extern unsigned XR←RealMul(); extern unsigned XR←RealDiv(); extern unsigned XR←RealGt(); extern unsigned XR←RealGe(); extern unsigned XR←RealAbs(); /* may re-evaluate argument if implemented as macro */ extern unsigned XR←RealMin(); /* may re-evaluate argument if implemented as macro */ extern unsigned XR←RealMax(); /* may re-evaluate argument if implemented as macro */ extern unsigned XR←RealPwr(); #endif