📄 main..c
字号:
#line 719 "../../src/cfront.h"extern int NFtn ; #line 719 "../../src/cfront.h"extern int NFpv ; #line 719 "../../src/cfront.h"extern int NFbt ; #line 719 "../../src/cfront.h"extern int NFf ; #line 719 "../../src/cfront.h"extern int NFs ; #line 719 "../../src/cfront.h"extern int NFc ; #line 719 "../../src/cfront.h"extern int NFe ; #line 719 "../../src/cfront.h"extern int NFl ; #line 720 "../../src/cfront.h"extern char * line_format ; #line 722 "../../src/cfront.h"extern Plist isf_list ; #line 723 "../../src/cfront.h"extern Pstmt st_ilist ; #line 724 "../../src/cfront.h"extern Pstmt st_dlist ; #line 725 "../../src/cfront.h"extern Ptable sti_tbl ; #line 726 "../../src/cfront.h"extern Ptable std_tbl ; #line 728 "../../src/cfront.h"extern Ptype np_promote ( ) ; #line 729 "../../src/cfront.h"extern int new_key ( ) ; #line 731 "../../src/cfront.h"extern Pname dcl_list ; #line 732 "../../src/cfront.h"extern int over_call ( ) ; #line 733 "../../src/cfront.h"extern Pname Nover ; #line 734 "../../src/cfront.h"extern Pname Ncoerce ; #line 735 "../../src/cfront.h"extern int Nover_coerce ; #line 737 "../../src/cfront.h"#line 738 "../../src/cfront.h"struct iline { /* sizeof = 108 */Pname _iline_fct_name ; Pin _iline_i_next ; Ptable _iline_i_table ; Pname _iline_local [ 8] ; Pexpr _iline_arg [ 8] ; Ptype _iline_tp [ 8] ; } ; #line 747 "../../src/cfront.h"extern Pexpr curr_expr ; #line 748 "../../src/cfront.h"extern Pin curr_icall ; #line 751 "../../src/cfront.h"extern Pstmt curr_loop ; #line 752 "../../src/cfront.h"extern Pblock curr_block ; #line 753 "../../src/cfront.h"extern Pstmt curr_switch ; #line 754 "../../src/cfront.h"extern bit arg_err_suppress ; #line 755 "../../src/cfront.h"extern struct loc last_line ; #line 757 "../../src/cfront.h"extern int no_of_undcl ; #line 758 "../../src/cfront.h"extern int no_of_badcall ; #line 759 "../../src/cfront.h"extern Pname undcl ; #line 759 "../../src/cfront.h"extern Pname badcall ; #line 761 "../../src/cfront.h"extern int strlen ( ) ; #line 762 "../../src/cfront.h"extern int strcpy ( ) ; #line 763 "../../src/cfront.h"extern int strcmp ( ) ; #line 764 "../../src/cfront.h"extern int str_to_int ( ) ; #line 765 "../../src/cfront.h"extern int c_strlen ( ) ; #line 767 "../../src/cfront.h"extern Pname vec_new_fct ; #line 768 "../../src/cfront.h"extern Pname vec_del_fct ; #line 777 "../../src/cfront.h"extern Pname find_hidden ( ) ; #line 778 "../../src/cfront.h"extern TOK lalex ( ) ; #line 779 "../../src/cfront.h"extern int Nstd ; #line 781 "../../src/cfront.h"extern int stcount ; #line 30 "../../src/main.c"char * prog_name = ( char * ) "<<cfront 10/10/85>>"; #line 32 "../../src/main.c"extern char * src_file_name ; #line 33 "../../src/main.c"char * src_file_name = 0 ; #line 35 "../../src/main.c"bit Styp = 1 ; #line 36 "../../src/main.c"bit Ssimpl = 1 ; #line 38 "../../src/main.c"bit old_fct_accepted ; #line 39 "../../src/main.c"bit fct_void ; #line 41 "../../src/main.c"char * line_format = ( char * ) "\n# %d \"%s\"\n"; #line 43 "../../src/main.c"Plist isf_list ; #line 44 "../../src/main.c"Pstmt st_ilist ; #line 45 "../../src/main.c"Pstmt st_dlist ; #line 46 "../../src/main.c"Ptable sti_tbl ; #line 47 "../../src/main.c"Ptable std_tbl ; #line 49 "../../src/main.c"int Nspy = 0 ; #line 50 "../../src/main.c"int Nfile = 1 ; #line 50 "../../src/main.c"int Nline = 0 ; #line 50 "../../src/main.c"int Ntoken = 0 ; #line 51 "../../src/main.c"int Nfree_store = 0 ; #line 51 "../../src/main.c"int Nalloc = 0 ; #line 51 "../../src/main.c"int Nfree = 0 ; #line 52 "../../src/main.c"int Nname = 0 ; #line 53 "../../src/main.c"int Nn = 0 ; #line 53 "../../src/main.c"int Nbt = 0 ; #line 53 "../../src/main.c"int Nt = 0 ; #line 53 "../../src/main.c"int Ne = 0 ; #line 53 "../../src/main.c"int Ns = 0 ; #line 53 "../../src/main.c"int Nc = 0 ; #line 53 "../../src/main.c"int Nstr = 0 ; #line 53 "../../src/main.c"int Nl = 0 ; #line 54 "../../src/main.c"extern int NFn ; #line 54 "../../src/main.c"extern int NFtn ; #line 54 "../../src/main.c"extern int NFbt ; #line 54 "../../src/main.c"extern int NFpv ; #line 54 "../../src/main.c"extern int NFf ; #line 54 "../../src/main.c"extern int NFe ; #line 54 "../../src/main.c"extern int NFs ; #line 54 "../../src/main.c"extern int NFc ; #line 54 "../../src/main.c"extern int NFl ; #line 56 "../../src/main.c"int simpl_init ( ) ; #line 57 "../../src/main.c"int typ_init ( ) ; #line 58 "../../src/main.c"int syn_init ( ) ; #line 59 "../../src/main.c"int lex_init ( ) ; #line 60 "../../src/main.c"int error_init ( ) ; #line 61 "../../src/main.c"int print_free ( ) ; #line 62 "../../src/main.c"int read_align ( ) ; #line 63 "../../src/main.c"int print_align ( ) ; #line 65 "../../src/main.c"int spy ( _auto_s ) char * _auto_s ; #line 66 "../../src/main.c"{ #line 66 "../../src/main.c"if ( _auto_s ) fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] #line 66 "../../src/main.c") ) , ( char * ) "%s:\n", _auto_s ) ; #line 68 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 68 "../../src/main.c"char * ) "files=%d lines=%d tokens=%d\n", Nfile , Nline , Ntoken ) ; #line 70 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 70 "../../src/main.c"char * ) "Names: distinct=%d global=%d type=%d\n", Nname , ( ( ( ( struct table * ) gtbl ) -> #line 70 "../../src/main.c"_table_free_slot - 1 ) ) , ( ( ( ( struct table * ) ktbl ) -> _table_free_slot - #line 70 "../../src/main.c"1 ) ) ) ; #line 71 "../../src/main.c"fflush ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) ) ; #line 71 "../../src/main.c"#line 72 "../../src/main.c"if ( start_time && stop_time ) { #line 72 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ #line 72 "../../src/main.c"2 ] ) ) , ( char * ) "start time: %s", ctime ( ( long * ) #line 72 "../../src/main.c"( & start_time ) ) ) ; #line 74 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 74 "../../src/main.c"char * ) "stop time: %s", ctime ( ( long * ) ( & stop_time ) ) ) #line 74 "../../src/main.c"; #line 76 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 76 "../../src/main.c"char * ) "real time delay %ld: %d lines per second\n", stop_time - start_time , Nline / ( stop_time - start_time ) ) ; #line 77 "../../src/main.c"fflush ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) ) ; #line 77 "../../src/main.c"} #line 80 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , #line 80 "../../src/main.c"( char * ) "free store=%dbytes alloc()=%d free()=%d ", Nfree_store , Nalloc , Nfree ) ; #line 81 "../../src/main.c"print_free ( ) ; #line 82 "../../src/main.c"fflush ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) ) ; #line 82 "../../src/main.c"#line 86 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 86 "../../src/main.c"char * ) "sizeof: n=%d bt=%d f=%d p=%d v=%d e=%d c=%d l=%d\n", 68, 36, 52, 16, 20, 24, 24, 16 ) ; #line 88 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 88 "../../src/main.c"char * ) "alloc(): n=%d bt=%d t=%d e=%d s=%d c=%d str=%d l=%d\n", Nn , Nbt , Nt , Ne , Ns , Nc , Nstr , Nl ) ; #line 90 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 90 "../../src/main.c"char * ) "free(): n=%d bt=%d t=%d e=%d s=%d c=%d str=? l=%d\n", NFn , NFbt , NFpv + NFf , NFe , NFs , NFc , NFl ) ; #line 91 "../../src/main.c"fflush ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) ) ; #line 91 "../../src/main.c"#line 92 "../../src/main.c"fprintf ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) , ( #line 92 "../../src/main.c"char * ) "%d errors\n", error_count ) ; #line 93 "../../src/main.c"fflush ( ( struct _iobuf * ) ( & ( _iob [ 2 ] ) ) ) ; #line 93 "../../src/main.c"} ; #line 96 "../../src/main.c"Pname dcl_list ; #line 98 "../../src/main.c"char * st_name ( ) ; #line 100 "../../src/main.c"int run ( ) #line 104 "../../src/main.c"{ #line 104 "../../src/main.c"Pname _auto_n ; int _auto_i ; Pname _auto_m ; #line 106 "../../src/main.c"_auto_i = 1 ; #line 108 "../../src/main.c"while ( _auto_n = syn ( ) ) { #line 108 "../../src/main.c"Pname _auto_nn ; Pname _auto_nx ; #line 112 "../../src/main.c"if ( _auto_n == ( ( ( struct name * ) ( 1 ) ) ) ) #line 112 "../../src/main.c"#line 112 "../../src/main.c"continue ; #line 114 "../../src/main.c"if ( Styp == 0 ) { #line 114 "../../src/main.c"_name_dcl_print ( ( struct name * ) _auto_n , 72 ) ; #line 114 "../../src/main.c"#line 116 "../../src/main.c"lex_clear ( ) ; #line 117 "../../src/main.c"continue ; } #line 120 "../../src/main.c"for ( _auto_nn = _auto_n ;_auto_nn ;( _auto_nn = _auto_nx ) ) { #line 120 "../../src/main.c"_auto_nx = _auto_nn -> _name_n_list ; #line 122 "../../src/main.c"_auto_nn -> _name_n_list = 0 ; #line 124 "../../src/main.c"if ( _name_dcl ( ( struct name * ) _auto_nn , ( struct table * ) gtbl , 14 ) #line 124 "../../src/main.c"== 0 ) #line 124 "../../src/main.c"continue ; #line 126 "../../src/main.c"if ( error_count ) continue ; #line 128 "../../src/main.c"if ( Ssimpl ) _name_simpl ( ( struct name * ) _auto_nn ) ; #line 131 "../../src/main.c"{ #line 131 "../../src/main.c"Pname _auto_dx ; Pname _auto_d ; #line 131 "../../src/main.c"_auto_d = dcl_list ; #line 131 "../../src/main.c"for ( ;_auto_d ;( _auto_d = _auto_dx ) ) { #line 131 "../../src/main.c"_auto_dx = _auto_d -> _name_n_list ; #line 133 "../../src/main.c"_name_dcl_print ( ( struct name * ) _auto_d , ( int ) 0 ) ; #line 134 "../../src/main.c"_name__dtor ( ( struct name * ) _auto_d , 1) ; } #line 136 "../../src/main.c"dcl_list = 0 ; #line 138 "../../src/main.c"if ( _auto_nn -> _node_base ) _name_dcl_print ( ( struct name * ) _auto_nn , ( int ) 0 #line 138 "../../src/main.c") ; #line 140 "../../src/main.c"switch ( _auto_nn -> _expr__O2.__C2_tp -> _node_base ) { #line 140 "../../src/main.c"default : { #line 142 "../../src/main.c"Pexpr _auto_i ; #line 142 "../../src/main.c"_auto_i = _auto_nn -> _expr__O4.__C4_n_initializer ; #line 143 "../../src/main.c"if ( _auto_i && ( _auto_i != ( ( ( struct expr * ) ( 1 ) ) #line 143 "../../src/main.c") ) ) #line 143 "../../src/main.c"if ( _auto_i && ( _auto_i -> _node_permanent == 0 ) ) _expr_del ( ( #line 143 "../../src/main.c"struct expr * ) _auto_i ) ; #line 143 "../../src/main.c"break ; } #line 146 "../../src/main.c"case 108 : { #line 147 "../../src/main.c"Pfct _auto_f ; #line 147 "../../src/main.c"_auto_f = ( ( ( struct fct * ) ( _auto_nn -> _expr__O2.__C2_tp ) ) ) ; #line 148 "../../src/main.c"if ( _auto_f -> _fct_body && ( debug || ( _auto_f -> _fct_f_inline == 0 ) ) ) { #line 148 "../../src/main.c"#line 148 "../../src/main.c"#line 149 "../../src/main.c"if ( _auto_f -> _fct_body && ( _auto_f -> _fct_body -> _node_permanent == 0 ) ) _stmt_del ( ( struct #line 149 "../../src/main.c"stmt * ) _auto_f -> _fct_body ) ; } #line 152 "../../src/main.c"break ; } #line 155 "../../src/main.c"case 6 : { #line 156 "../../src/main.c"Pclass _auto_cl ; register Pname _auto_p ; #line 156 "../../src/main.c"_auto_cl = ( ( ( struct classdef * ) ( _auto_nn -> _expr__O2.__C2_tp ) ) ) ; #line 158 "../../src/main.c"for ( _auto_p = _auto_cl -> _classdef_pubmem ;_auto_p ;( _auto_p = _auto_p -> _name_n_list ) ) { #line 158 "../../src/main.c"switch ( _auto_p -> _expr__O2.__C2_tp -> #line 158 "../../src/main.c"_node_base ) #line 159 "../../src/main.c"{ #line 159 "../../src/main.c"case 108 : { #line 161 "../../src/main.c"Pfct _auto_f ; #line 161 "../../src/main.c"_auto_f = ( ( ( struct fct * ) ( _auto_p -> _expr__O2.__C2_tp ) ) ) ; #line 162 "../../src/main.c"if ( _auto_f -> _fct_body && ( debug || ( _auto_f -> _fct_f_inline == 0 ) ) ) { #line 162 "../../src/main.c"#line 162 "../../src/main.c"#line 163 "../../src/main.c"if ( _auto_f -> _fct_body && ( _auto_f -> _fct_body -> _node_permanent == 0 ) ) _stmt_del ( ( struct #line 163 "../../src/main.c"stmt * ) _auto_f -> _fct_body ) ; #line 164 "../../src/main.c"_auto_f -> _fct_body = 0 ; } } #line 167 "../../src/main.c"case 6 : case 13 : break ; #line 170 "../../src/main.c"case 119 : case 121 : if ( _auto_p && ( _auto_p -> _node_permanent == 0 ) ) _name_del ( #line 170 "../../src/main.c"( struct name * ) _auto_p ) ; #line 173 "../../src/main.c"break ; #line 174 "../../src/main.c"default : _name__dtor ( ( struct name * ) _auto_p , 1) ; } } #line 178 "../../src/main.c"_auto_cl -> _classdef_pubmem = 0 ; #line 181 "../../src/main.c"for ( _auto_p = _auto_cl -> _classdef_privmem ;_auto_p ;( _auto_p = _auto_p -> _name_n_list ) ) { #line 181 "../../src/main.c"switch ( _auto_p -> _expr__O2.__C2_tp -> #line 181 "../../src/main.c"_node_base ) #line 182 "../../src/main.c"{ #line 182 "../../src/main.c"case 108 : { #line 184 "../../src/main.c"Pfct _auto_f ; #line 184 "../../src/main.c"_auto_f = ( ( ( struct fct * ) ( _auto_p -> _expr__O2.__C2_tp ) ) ) ; #line 185 "../../src/main.c"if ( _auto_f -> _fct_body && ( debug || ( _auto_f -> _fct_f_inline == 0 ) ) ) { #line 185 "../../src/main.c"#line 185 "../../src/main.c"#line 186 "../../src/main.c"if ( _auto_f -> _fct_body && ( _auto_f -> _fct_body -> _node_permanent == 0 ) ) _stmt_del ( ( struct #line 186 "../../src/main.c"stmt * ) _auto_f -> _fct_body ) ; #line 187 "../../src/main.c"_auto_f -> _fct_body = 0 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -