This is b_demo1.c in view mode; [Download] [Up]
#include <string.h> /* predefined exceptions */ char constraint_error = 0; char numeric_error = 0; char program_error = 0; char storage_error = 0; char tasking_error = 0; char _abort_signal = 1; static int static_argc; static char * *static_argv; int arg_count () { return static_argc; } int len_arg (arg_num) int arg_num; { return strlen(static_argv[arg_num]); } int fill_arg (a, i) char * a; int i; { strncpy (a, static_argv[i], strlen(static_argv[i])); } extern void (*system__tasking_soft_links__abort_defer) (); extern char *system__task_specific_data__get_gnat_exception (); extern int *system__task_specific_data__get_jmpbuf_address (); extern char debug__get_debug_flag_k (); void __gnat_raise_nodefer (except) char *except; { int *ptr = system__task_specific_data__get_jmpbuf_address (); system__task_specific_data__set_gnat_exception (except); if (ptr) longjmp (ptr, 1); else { if (except == &constraint_error) puts ("\nraised Constraint_Error\n"); else if (except == &numeric_error) puts ("\nraised Numeric_Error\n"); else if (except == &program_error) puts ("\nraised Program_Error\n"); else if (except == &storage_error) puts ("\nraised Storage_Error\n"); else if (except == &tasking_error) puts ("\nraised Tasking_Error\n"); else if (!ptr) puts ("\nraised unhandled exception\n"); exit (1); } } void __gnat_raise (except) char *except; { (*system__tasking_soft_links__abort_defer) (); __gnat_raise_nodefer (except); } void __gnat_reraise (flag) int flag; { char *except = system__task_specific_data__get_gnat_exception (); if (flag) __gnat_raise (except); else __gnat_raise_nodefer (except); } void __gnat_raise_constraint_error () { __gnat_raise (&constraint_error); } int gnat_exit_status = 0; void set_gnat_exit_status (i) int i; { gnat_exit_status = i; } int __main_priority () { return -1; } void main (argc, argv) int argc; char * argv[]; { static_argc = argc; static_argv = argv; system__tasking_soft_links___elabs (); system__task_specific_data___elabb (); instr___elabs (); _ada_demo1 (); exit (gnat_exit_status); } /* BEGIN Object file list /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/ada.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/system.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/a-tags.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/s-stoele.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/s-taspda.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/s-tasoli.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/s-stalib.o instr.o /usr/local/lib/gcc-lib/m68k-next-ns3/2.6.0/adalib/io.o demo1.o END Object file list */
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.