/* -- ANSI C code generated by : -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.78Beta#1)-- -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE -- -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- -- http://SmallEiffel.loria.fr/ -- */ /* -- This file is free software, which comes along with SmallEiffel. This -- software is distributed in the hope that it will be useful, but WITHOUT -- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided -- this header is kept unaltered, and a notification of the changes is added. -- You are allowed to redistribute it and sell it, alone or as a part of -- another product. -- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- http://www.loria.fr/SmallEiffel -- */ /* This file (base.h) is automatically included in the header for all modes of compilation : -boost, -no_check, -require_check, ... This file is also included in the header of any cecil file. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #ifndef O_RDONLY #include #endif #ifndef O_RDONLY #define O_RDONLY 0000 #endif /* On Linux glibc systems, we need to use sig.* versions of jmp_buf, setjmp and longjmp to preserve the signal handling context. Currently, the way I figured to detect this is if _SIGSET_H_types has been defined in /usr/include/setjmp.h. */ #ifdef _SIGSET_H_types # define JMP_BUF sigjmp_buf # define SETJMP(x) sigsetjmp( (x), 1) # define LONGJMP siglongjmp #else # define JMP_BUF jmp_buf # define SETJMP(x) setjmp( (x) ) # define LONGJMP longjmp #endif /* Type to store reference objects Id : */ typedef int Tid; typedef struct S0 T0; struct S0{ Tid id; }; /* The default channel used to print runtime error messages : */ #define SE_ERR stderr /* Eiffel type INTEGER is #2 : */ typedef int T2; #define M2 (0) #define T2BITS (CHAR_BIT*sizeof(int)) #define T2MIN INT_MIN #define T2MAX INT_MAX /* Eiffel type CHARACTER is #3 : */ typedef char T3; #define M3 (0) #define T3BITS CHAR_BIT #define T3MIN (0) #define T3MAX (255) /* Eiffel type REAL is #4 : */ typedef float T4; #define M4 (0.0) #define T4BITS (CHAR_BIT*sizeof(float)) #define T4MIN (-(FLT_MAX)) #define T4MAX FLT_MAX /* Eiffel type DOUBLE is #5 : */ typedef double T5; #define M5 (0.0) #define T5BITS (CHAR_BIT*sizeof(double)) #define T5MIN (-(DBL_MAX)) #define T5MAX DBL_MAX /* Eiffel type BOOLEAN is #6 : */ typedef int T6; #define M6 (0) #define T6BITS (CHAR_BIT*sizeof(int)) /* Eiffel type POINTER is #8 : */ typedef void* T8; #define M8 (NULL) #define T8BITS (CHAR_BIT*sizeof(void*)) /* --- Mangling Table Start --- A 1 T2135 E NATIVE_ARRAY[STRING] 2135 A 1 T474 R BOOLEAN_REF 474 A 1 T1405 R BASIC_DIRECTORY 1405 A 1 T2 E INTEGER 2 D 8 T98 R ANY 1886,1405,714,7,719,528,878,474 A 1 T3 E CHARACTER 3 A 1 T1886 R FIXED_ARRAY[STRING] 1886 A 1 T9 E NATIVE_ARRAY[CHARACTER] 9 A 1 T7 R STRING 7 A 1 T878 R STD_OUTPUT 878 A 1 T8 E POINTER 8 A 1 T714 R CHARACTER_REF 714 A 1 T6 E BOOLEAN 6 A 1 T528 R INTEGER_REF 528 A 1 T719 R EXAMPLE03 719 --- Mangling Table End --- */ /*C Header Pass 1 :*/ typedef struct S474 T474; typedef struct S1405 T1405; typedef struct S1886 T1886; typedef struct S7 T7; typedef struct S878 T878; typedef struct S714 T714; typedef struct S528 T528; typedef struct S719 T719; /*C Header Pass 2 :*/ typedef T0**T2135; typedef T3*T9; /*C Header Pass 3 :*/ /*C Header Pass 4 :*/ void se_prinT2135(T2135*o); struct S474{int id;T6 _item;}; extern T474 M474; void se_prinT474(T474**o); struct S1405{int id;T0* _path;T0* _name_list;}; extern T1405 M1405; void se_prinT1405(T1405**o); struct S1886{int id;T2135 _storage;T2 _capacity;T2 _upper;}; extern T1886 M1886; void se_prinT1886(T1886**o); void se_prinT9(T9*o); struct S7{int id;T9 _storage;T2 _count;T2 _capacity;}; extern T7 M7; struct S878{int id;}; extern T878 M878; void se_prinT878(T878**o); struct S714{int id;T3 _item;}; extern T714 M714; void se_prinT714(T714**o); struct S528{int id;T2 _item;}; extern T528 M528; void se_prinT528(T528**o); struct S719{int id;}; extern T719 M719; void se_prinT719(T719**o); T7*se_ms(int c,char*e); T7*e2s(char*e); char*s2e(T7*s); /* -- This file is free software, which comes along with SmallEiffel. This -- software is distributed in the hope that it will be useful, but WITHOUT -- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided -- this header is kept unaltered, and a notification of the changes is added. -- You are allowed to redistribute it and sell it, alone or as a part of -- another product. -- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- http://www.loria.fr/SmallEiffel -- */ /* This file (no_check.h) is automatically included when `run_control.no_check' is true (ie. all modes ecxept mode -boost). */ #define SE_NO_CHECK 1 /* To be able to print a stack frame in a human readable format : */ typedef struct _se_frame_descriptor se_frame_descriptor; struct _se_frame_descriptor { char* name; int use_current; int local_count; /* Number of C variable to print. */ char* local_format; /* Format information. */ int assertion_flag; /* 1 when assertions can be checked. */ }; /* To keep the track of execution in order to be able to print a dump when things goes wrong : */ typedef struct _se_dump_stack se_dump_stack; struct _se_dump_stack { se_frame_descriptor* fd; void** current; /* NULL when not used. */ int l; /* Current execution line. */ int c; /* Current execution column. */ int f; /* File path index (base class id). */ se_dump_stack* caller; /* Back to the caller. */ void*** locals; }; extern se_dump_stack* se_dst; void se_print_run_time_stack(void); void se_print_one_frame(se_dump_stack*ds); void se_core_dump(char *msg); extern int se_rspf; extern int se_require_uppermost_flag; extern int se_require_last_result; int se_rci(void*C); void error0(char*m); void error1(char*m,int l,int c,int f); void error2(T0*o,int l,int c,int f); T0* vc(void*o,int l,int c,int f); T0* ci(int id,void*o,int l,int c,int f); void ac_req(int v); void ac_ens(int v); void ac_inv(int v); void ac_liv(int v); void ac_insp(int v); int ac_lvc(int lc,int lv1,int lv2); void ac_civ(int v); void se_evobt(void*o,int l,int c,int f); void sigrsp(int sig); void se_gc_check_id(void*o,int id); /* -- This file is free software, which comes along with SmallEiffel. This -- software is distributed in the hope that it will be useful, but WITHOUT -- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided -- this header is kept unaltered, and a notification of the changes is added. -- You are allowed to redistribute it and sell it, alone or as a part of -- another product. -- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- http://www.loria.fr/SmallEiffel -- */ /* This file (trace.h) is automatically included when `run_control.no_check' is true (ie. all modes ecxept -boost). This file comes after no_check.[hc] to implements the -trace flag as well as some other printing stuff. */ void se_prinT0(T0**o); void se_prinT2(T2*o); void se_prinT3(T3*o); void se_prinT4(T4*o); void se_prinT5(T5*o); void se_prinT6(T6*o); void se_prinT7(T7**o); void se_prinT8(T8*o); void se_trace(se_dump_stack*ds,int l,int c,int f); /* -- This file is free software, which comes along with SmallEiffel. This -- software is distributed in the hope that it will be useful, but WITHOUT -- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided -- this header is kept unaltered, and a notification of the changes is added. -- You are allowed to redistribute it and sell it, alone or as a part of -- another product. -- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- http://www.loria.fr/SmallEiffel -- */ /* This file (basic_directory.h) is automatically included when some external "SmallEiffel" feature of class BASIC_DIRECTORY is live. */ #include #include void* se_dir_open(void* path); void* se_dir_name(void* dirstream); void* se_dir_next(void* dirstream); void* se_dir_gcwd(int unused); #define FSOC_SIZE 8192 #define RSOC_SIZE 32768 /* -- This file is free software, which comes along with SmallEiffel. This -- software is distributed in the hope that it will be useful, but WITHOUT -- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided -- this header is kept unaltered, and a notification of the changes is added. -- You are allowed to redistribute it and sell it, alone or as a part of -- another product. -- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- http://www.loria.fr/SmallEiffel -- */ /* This file is automatically included when the Garbage Collector is used (default, unless option -no_gc has been selected). */ #define SE_GC_LIB 1 #define RSOH_UNMARKED 15253 #define RSOH_MARKED 0 #define RSOH_FREE 1 #define FSOH_UNMARKED 1 #define FSOH_MARKED 0 /* To codify the state and the type of some Memory Chunk, we are using the following definitions : */ #define FSO_FREE_CHUNK (-2) #define RSO_FREE_CHUNK (-1) #define RSO_USED_CHUNK ( 0) #define FSO_STORE_CHUNK ( 1) #define FSO_USED_CHUNK ( 2) #define FREE_CHUNK(x) ((x)<0) /* Minimum size for a store area in a ReSizable Objects Chunk : */ #define RSOC_MIN_STORE 512 typedef struct s_mch mch; /* Memory Chunk Header. */ typedef struct s_fsoc fsoc; /* Fixed Size Objects Chunk. */ typedef union u_rsoh rsoh; /* ReSizable Object Header. */ typedef struct s_fll_rsoh fll_rsoh; typedef struct s_rsoc rsoc; /* ReSizable Objects Chunk. */ typedef struct s_na_env na_env; /* Native Array ENVironment. */ struct s_mch{ int size; /* In number of bytes (actual argument of malloc).*/ int state_type; /* One value in : RSO_USED_CHUNK, FREE_CHUNK, FSO_STORE_CHUNK, FSO_USED_CHUNK */ void(*amfp)(mch*,void*); /* Align Mark Function Pointer. */ void(*swfp)(mch*); /* SWeep Function Pointer. */ }; struct s_fsoc{ mch header; fsoc* next; int count_minus_one; double first_object; }; typedef struct _rso_header rso_header; struct _rso_header{ int size; int magic_flag; /* RSOH_MARKED when used, RSOH_FREE when free, else RSOH_UNMARKED */ }; union u_rsoh{ rso_header header; double padding; }; struct s_fll_rsoh { rso_header rsoh_field; fll_rsoh* nextflol; }; struct s_rsoc{ mch header; rsoc* next; fll_rsoh*free_list_of_large; na_env*nae; rsoh first_header; }; struct s_na_env{ int store_left; rsoh* store; rsoc*store_chunk; rsoc*chunk_list; void (*gc_mark)(T0*); }; extern void**stack_bottom; extern mch**gcmt; extern int gcmt_max; extern int gcmt_used; extern fsoc*fsocfl; extern rsoc*rsocfl; extern int gc_is_off; extern unsigned int fsoc_count; extern unsigned int rsoc_count; extern void*gcmt_tail_addr; int na_rounded_size(int s); void gc_sweep(void); void gc_mark(void*p); int gc_stack_size(void); int garbage_delayed(void); void gc_update_ceils(void); fsoc*new_fsoc(void); char*new_na(na_env*nae,int size); void gcna_align_mark(rsoc*c,void*o); int fsocfl_count(void); int rsocfl_count(void); extern unsigned int fsoc_count_ceil; extern unsigned int rsoc_count_ceil; extern unsigned int gc_start_count; T6 r2in_range(se_dump_stack*caller,T2 C,T2 a1,T2 a2); extern se_frame_descriptor f2in_range; void r2append_in(se_dump_stack*caller,T2 C,T0* a1); extern se_frame_descriptor f2append_in; T3 r2digit(se_dump_stack*caller,T2 C); extern se_frame_descriptor f2digit; T6 r2divisible(se_dump_stack*caller,T2 a1); extern se_frame_descriptor f2divisible; T6 r3_px_6061(se_dump_stack*caller,T3 C,T3 a1); extern se_frame_descriptor f3_px_6061; T6 r3_px_60(se_dump_stack*caller,T3 C,T3 a1); extern se_frame_descriptor f3_px_60; T6 r3is_digit(se_dump_stack*caller,T3 C); extern se_frame_descriptor f3is_digit; T2 r3value(se_dump_stack*caller,T3 C); extern se_frame_descriptor f3value; T6 r8is_null(se_dump_stack*caller,T8 C); extern se_frame_descriptor f8is_null; T6 r6_px_or(se_dump_stack*caller,T6 C,T6 a1); extern se_frame_descriptor f6_px_or; T6 r6_ix_not(se_dump_stack*caller,T6 C); extern se_frame_descriptor f6_ix_not; T6 r6_px_and(se_dump_stack*caller,T6 C,T6 a1); extern se_frame_descriptor f6_px_and; T2135 r2135realloc(se_dump_stack*caller,T2135 C,T2 a1,T2 a2); extern se_frame_descriptor f2135realloc; T6 r2135is_not_null(se_dump_stack*caller,T2135 C); extern se_frame_descriptor f2135is_not_null; T6 r2135equal_like(se_dump_stack*caller,T0* a1,T0* a2); extern se_frame_descriptor f2135equal_like; void r2135copy_from(se_dump_stack*caller,T2135 C,T2135 a1,T2 a2); extern se_frame_descriptor f2135copy_from; T6 r2135memcmp(se_dump_stack*caller,T2135 C,T2135 a1,T2 a2); extern se_frame_descriptor f2135memcmp; T2 r2135index_of(se_dump_stack*caller,T2135 C,T0* a1,T2 a2); extern se_frame_descriptor f2135index_of; T6 r9fast_memcmp(se_dump_stack*caller,T9 C,T9 a1,T2 a2); extern se_frame_descriptor f9fast_memcmp; T9 r9realloc(se_dump_stack*caller,T9 C,T2 a1,T2 a2); extern se_frame_descriptor f9realloc; T6 r9is_not_null(se_dump_stack*caller,T9 C); extern se_frame_descriptor f9is_not_null; T6 r9fast_has(se_dump_stack*caller,T9 C,T3 a1,T2 a2); extern se_frame_descriptor f9fast_has; void r9copy_from(se_dump_stack*caller,T9 C,T9 a1,T2 a2); extern se_frame_descriptor f9copy_from; T6 r7standard_is_equal(se_dump_stack*caller,T7* C,T0* a1); extern se_frame_descriptor f7standard_is_equal; T8 r7to_external(se_dump_stack*caller,T7* C); extern se_frame_descriptor f7to_external; void r7from_external(se_dump_stack*caller,T7* C,T8 a1); extern se_frame_descriptor f7from_external; T6 r7has(se_dump_stack*caller,T7* C,T3 a1); extern se_frame_descriptor f7has; T6 r7is_equal(se_dump_stack*caller,T7* C,T0* a1); extern se_frame_descriptor f7is_equal; T3 r7item(se_dump_stack*caller,T7* C,T2 a1); extern se_frame_descriptor f7item; T6 r7valid_index(se_dump_stack*caller,T7* C,T2 a1); extern se_frame_descriptor f7valid_index; void r7make(se_dump_stack*caller,T7* C,T2 a1); extern se_frame_descriptor f7make; void r7extend(se_dump_stack*caller,T7* C,T3 a1); extern se_frame_descriptor f7extend; void r7from_external_copy(se_dump_stack*caller,T7* C,T8 a1); extern se_frame_descriptor f7from_external_copy; void r7clear(se_dump_stack*caller,T7* C); extern se_frame_descriptor f7clear; void r7swap(se_dump_stack*caller,T7* C,T2 a1,T2 a2); extern se_frame_descriptor f7swap; T6 r7empty(se_dump_stack*caller,T7* C); extern se_frame_descriptor f7empty; void r7put(se_dump_stack*caller,T7* C,T3 a1,T2 a2); extern se_frame_descriptor f7put; extern se_frame_descriptor se_ifd7; T7*se_i7(se_dump_stack*caller,T7*C); void r1886with_capacity(se_dump_stack*caller,T1886* C,T2 a1); extern se_frame_descriptor f1886with_capacity; T6 r1886standard_is_equal(se_dump_stack*caller,T1886* C,T0* a1); extern se_frame_descriptor f1886standard_is_equal; T6 r1886has(se_dump_stack*caller,T1886* C,T0* a1); extern se_frame_descriptor f1886has; void r1886add_last(se_dump_stack*caller,T1886* C,T0* a1); extern se_frame_descriptor f1886add_last; T6 r1886is_equal(se_dump_stack*caller,T1886* C,T0* a1); extern se_frame_descriptor f1886is_equal; T0* r1886item(se_dump_stack*caller,T1886* C,T2 a1); extern se_frame_descriptor f1886item; T6 r1886valid_index(se_dump_stack*caller,T1886* C,T2 a1); extern se_frame_descriptor f1886valid_index; T0* r1886last(se_dump_stack*caller,T1886* C); extern se_frame_descriptor f1886last; T2 r1886count(se_dump_stack*caller,T1886* C); extern se_frame_descriptor f1886count; T6 r1886equal(se_dump_stack*caller,T1886* C,T0* a1,T0* a2); extern se_frame_descriptor f1886equal; void r1886clear(se_dump_stack*caller,T1886* C); extern se_frame_descriptor f1886clear; T6 r1886empty(se_dump_stack*caller,T1886* C); extern se_frame_descriptor f1886empty; T2 r1886index_of(se_dump_stack*caller,T1886* C,T0* a1); extern se_frame_descriptor f1886index_of; void r1886put(se_dump_stack*caller,T1886* C,T0* a1,T2 a2); extern se_frame_descriptor f1886put; extern se_frame_descriptor se_ifd1886; T1886*se_i1886(se_dump_stack*caller,T1886*C); T6 r474standard_is_equal(se_dump_stack*caller,T474* C,T0* a1); extern se_frame_descriptor f474standard_is_equal; T6 r474is_equal(se_dump_stack*caller,T474* C,T0* a1); extern se_frame_descriptor f474is_equal; T6 r1405standard_is_equal(se_dump_stack*caller,T1405* C,T0* a1); extern se_frame_descriptor f1405standard_is_equal; T6 r1405has(se_dump_stack*caller,T1405* C,T0* a1); extern se_frame_descriptor f1405has; T6 r1405is_equal(se_dump_stack*caller,T1405* C,T0* a1); extern se_frame_descriptor f1405is_equal; T6 r1405valid_index(se_dump_stack*caller,T1405* C,T2 a1); extern se_frame_descriptor f1405valid_index; T2 r1405count(se_dump_stack*caller,T1405* C); extern se_frame_descriptor f1405count; void r1405current_working_directory(se_dump_stack*caller,T1405* C); extern se_frame_descriptor f1405current_working_directory; void r1405make(se_dump_stack*caller,T1405* C); extern se_frame_descriptor f1405make; T6 r1405update(se_dump_stack*caller,T1405* C); extern se_frame_descriptor f1405update; T2 r1405upper(se_dump_stack*caller,T1405* C); extern se_frame_descriptor f1405upper; T0* r1405name(se_dump_stack*caller,T1405* C,T2 a1); extern se_frame_descriptor f1405name; T6 r878standard_is_equal(se_dump_stack*caller,T878* C,T0* a1); extern se_frame_descriptor f878standard_is_equal; T6 r878is_equal(se_dump_stack*caller,T878* C,T0* a1); extern se_frame_descriptor f878is_equal; void r878put_string(se_dump_stack*caller,T878* C,T0* a1); extern se_frame_descriptor f878put_string; void r878make(se_dump_stack*caller,T878* C); extern se_frame_descriptor f878make; void r878put_character(se_dump_stack*caller,T878* C,T3 a1); extern se_frame_descriptor f878put_character; extern int fBC1070tmp_string; extern T0*oBC1070tmp_string; T0* r878tmp_string(se_dump_stack*caller); extern se_frame_descriptor f878tmp_string; void r878put_integer(se_dump_stack*caller,T878* C,T2 a1); extern se_frame_descriptor f878put_integer; T6 r714standard_is_equal(se_dump_stack*caller,T714* C,T0* a1); extern se_frame_descriptor f714standard_is_equal; T6 r714is_equal(se_dump_stack*caller,T714* C,T0* a1); extern se_frame_descriptor f714is_equal; T6 r528standard_is_equal(se_dump_stack*caller,T528* C,T0* a1); extern se_frame_descriptor f528standard_is_equal; T6 r528is_equal(se_dump_stack*caller,T528* C,T0* a1); extern se_frame_descriptor f528is_equal; T6 r719standard_is_equal(se_dump_stack*caller,T719* C,T0* a1); extern se_frame_descriptor f719standard_is_equal; T6 r719is_equal(se_dump_stack*caller,T719* C,T0* a1); extern se_frame_descriptor f719is_equal; extern T0*oBC1std_output; void r719make(se_dump_stack*caller,T719* C); extern se_frame_descriptor f719make; extern T719*eiffel_root_object; extern int se_argc; extern char**se_argv; #define SE_MAXID 2136 extern T7* g[]; extern T7* t[]; extern char* p[]; extern void(*se_prinT[2136])(void**); void initialize_eiffel_runtime(int argc,char*argv[]); extern T7*ms719_52800; extern T7*ms719_40698; extern T7*ms2_8350; extern T7*ms719_288; void se_msi1(void); void manifest_string_mark1(void); void once_function_mark(void); void gc_start(void); extern na_env na_env2135; typedef struct B474 gc474; struct B474{T474 object;union {int flag;gc474*next;} header;}; extern gc474*store474; extern int store_left474; extern fsoc*store_chunk474; extern gc474*gc_free474; typedef struct B1405 gc1405; struct B1405{T1405 object;union {int flag;gc1405*next;} header;}; extern gc1405*store1405; extern int store_left1405; extern fsoc*store_chunk1405; extern gc1405*gc_free1405; typedef struct B1886 gc1886; struct B1886{T1886 object;union {int flag;gc1886*next;} header;}; extern gc1886*store1886; extern int store_left1886; extern fsoc*store_chunk1886; extern gc1886*gc_free1886; extern na_env na_env9; typedef struct B7 gc7; struct B7{T7 object;union {int flag;gc7*next;} header;}; extern gc7*store7; extern int store_left7; extern fsoc*store_chunk7; extern gc7*gc_free7; typedef struct B878 gc878; struct B878{T878 object;union {int flag;gc878*next;} header;}; extern gc878*store878; extern int store_left878; extern fsoc*store_chunk878; extern gc878*gc_free878; typedef struct B714 gc714; struct B714{T714 object;union {int flag;gc714*next;} header;}; extern gc714*store714; extern int store_left714; extern fsoc*store_chunk714; extern gc714*gc_free714; typedef struct B528 gc528; struct B528{T528 object;union {int flag;gc528*next;} header;}; extern gc528*store528; extern int store_left528; extern fsoc*store_chunk528; extern gc528*gc_free528; typedef struct B719 gc719; struct B719{T719 object;union {int flag;gc719*next;} header;}; extern gc719*store719; extern int store_left719; extern fsoc*store_chunk719; extern gc719*gc_free719; void gc_mark2135(T2135 o); T2135 new2135(int size); void gc_sweep474(fsoc*c); void gc_mark474(T474*o); void gc_align_mark474(fsoc*c,gc474*p); extern fsoc H474; T474*new474(void); void gc_sweep1405(fsoc*c); void gc_mark1405(T1405*o); void gc_align_mark1405(fsoc*c,gc1405*p); extern fsoc H1405; T1405*new1405(void); void gc_sweep1886(fsoc*c); void gc_mark1886(T1886*o); void gc_align_mark1886(fsoc*c,gc1886*p); extern fsoc H1886; T1886*new1886(void); void gc_mark9(T9 o); T9 new9(int size); void gc_sweep7(fsoc*c); void gc_mark7(T7*o); void gc_align_mark7(fsoc*c,gc7*p); extern fsoc H7; T7*new7(void); void gc_sweep878(fsoc*c); void gc_mark878(T878*o); void gc_align_mark878(fsoc*c,gc878*p); extern fsoc H878; T878*new878(void); void gc_sweep714(fsoc*c); void gc_mark714(T714*o); void gc_align_mark714(fsoc*c,gc714*p); extern fsoc H714; T714*new714(void); void gc_sweep528(fsoc*c); void gc_mark528(T528*o); void gc_align_mark528(fsoc*c,gc528*p); extern fsoc H528; T528*new528(void); void gc_sweep719(fsoc*c); void gc_mark719(T719*o); void gc_align_mark719(fsoc*c,gc719*p); extern fsoc H719; T719*new719(void); T6 X98standard_is_equal(se_dump_stack*caller,int l,int c,int f, void *C,T0* a1); T6 X98is_equal(se_dump_stack*caller,int l,int c,int f, void *C,T0* a1);