⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 expand..c

📁 CFront1.0的源代码,第一代C++编译器的思想...
💻 C
📖 第 1 页 / 共 5 页
字号:
{ #line 117 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( _auto_ee ) ) ) #line 117 "../../src/expand.c"; #line 117 "../../src/expand.c"return _auto__result ; } } } #line 120 "../../src/expand.c"if ( _auto_this -> _stmt_s ) { #line 120 "../../src/expand.c"{ _auto__result = _stmt_expand ( ( struct stmt * #line 120 "../../src/expand.c") _auto_this -> _stmt_s ) ; #line 120 "../../src/expand.c"return _auto__result ; } } #line 122 "../../src/expand.c"{ #line 122 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( zero ) ) #line 122 "../../src/expand.c") ; #line 122 "../../src/expand.c"return _auto__result ; } } #line 124 "../../src/expand.c"case 166 : _auto_ee = ( _auto_this -> _stmt__O8.__C8_s2 ? ( ( ( struct expr * ) #line 124 "../../src/expand.c"( _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt__O8.__C8_s2 ) ) ) ) : ( ( #line 124 "../../src/expand.c"( struct expr * ) ( 0 ) ) ) ) ; #line 126 "../../src/expand.c"_auto_ee = ( struct expr * ) _expr__ctor ( ( struct expr * ) 0 , 71 , ( #line 126 "../../src/expand.c"struct expr * ) ( _auto_this -> _stmt_s ? ( ( ( struct expr * ) ( _stmt_expand ( #line 126 "../../src/expand.c"( struct stmt * ) _auto_this -> _stmt_s ) ) ) ) : ( ( ( struct #line 126 "../../src/expand.c"expr * ) ( 0 ) ) ) ) , ( struct expr * ) _auto_ee ) #line 126 "../../src/expand.c"; #line 127 "../../src/expand.c"if ( _auto_this -> _stmt_s_list ) _auto_ee = ( struct expr * ) _expr__ctor ( ( struct expr * ) #line 127 "../../src/expand.c"0 , 71 , ( struct expr * ) _auto_ee , ( struct expr * ) ( ( #line 127 "../../src/expand.c"( struct expr * ) ( _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt_s_list ) ) ) #line 127 "../../src/expand.c") ) ; #line 128 "../../src/expand.c"_auto_ee -> _node_permanent = 1 ; #line 129 "../../src/expand.c"{ #line 129 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( _auto_ee ) ) ) ; #line 129 "../../src/expand.c"#line 129 "../../src/expand.c"return _auto__result ; } } #line 131 "../../src/expand.c"case 28 : _static_ret_seen = 1 ; #line 133 "../../src/expand.c"_auto_this -> _stmt_s_list = 0 ; #line 134 "../../src/expand.c"{ #line 134 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( _expr_expand ( ( struct expr * #line 134 "../../src/expand.c") _auto_this -> _stmt__O8.__C8_e ) ) ) ) ; #line 134 "../../src/expand.c"return _auto__result ; } } #line 136 "../../src/expand.c"case 72 : _auto_ee = ( ( ( _auto_this -> _stmt__O8.__C8_e == 0 ) || ( #line 136 "../../src/expand.c"_auto_this -> _stmt__O8.__C8_e -> _node_base == 144 ) ) ? zero : _expr_expand ( ( struct expr * ) _auto_this -> _stmt__O8.__C8_e ) #line 136 "../../src/expand.c") ; #line 138 "../../src/expand.c"if ( _auto_this -> _stmt_s_list ) { #line 138 "../../src/expand.c"_auto_ee = ( struct expr * ) _expr__ctor ( ( struct expr * #line 138 "../../src/expand.c") 0 , 71 , ( struct expr * ) _auto_ee , ( struct expr * ) ( #line 138 "../../src/expand.c"( ( struct expr * ) ( _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt_s_list ) ) #line 138 "../../src/expand.c") ) ) ; #line 140 "../../src/expand.c"_auto_ee -> _node_permanent = 1 ; } #line 142 "../../src/expand.c"{ #line 142 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( _auto_ee ) ) ) #line 142 "../../src/expand.c"; #line 142 "../../src/expand.c"return _auto__result ; } } #line 144 "../../src/expand.c"case 20 : { #line 145 "../../src/expand.c"_static_ret_seen = 0 ; #line 146 "../../src/expand.c"{ #line 146 "../../src/expand.c"Pexpr _auto_qq ; #line 146 "../../src/expand.c"_auto_qq = ( struct expr * ) _expr__ctor ( ( struct expr * ) 0 , 68 , ( #line 146 "../../src/expand.c"struct expr * ) ( ( ( struct expr * ) ( _stmt_expand ( ( struct stmt * #line 146 "../../src/expand.c") _auto_this -> _stmt_s ) ) ) ) , ( struct expr * ) 0 ) ; #line 146 "../../src/expand.c"#line 147 "../../src/expand.c"_auto_qq -> _expr__O5.__C5_cond = _expr_expand ( ( struct expr * ) _auto_this -> _stmt__O8.__C8_e ) ; #line 148 "../../src/expand.c"_auto_qq -> _expr__O4.__C4_e2 = ( _auto_this -> _stmt__O9.__C9_else_stmt ? ( ( ( struct expr * ) ( _stmt_expand ( ( #line 148 "../../src/expand.c"struct stmt * ) _auto_this -> _stmt__O9.__C9_else_stmt ) ) ) ) : zero ) ; #line 149 "../../src/expand.c"if ( _static_ret_seen && _auto_this -> _stmt_s_list ) errorFI_PC__E ( ( int ) 's' , ( char * ) #line 149 "../../src/expand.c""S after \"return\" inIF") ; #line 150 "../../src/expand.c"_static_ret_seen = 0 ; #line 151 "../../src/expand.c"if ( _auto_this -> _stmt_s_list ) _auto_qq = ( struct expr * ) _expr__ctor ( ( struct expr * ) #line 151 "../../src/expand.c"0 , 71 , ( struct expr * ) _auto_qq , ( struct expr * ) ( ( #line 151 "../../src/expand.c"( struct expr * ) ( _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt_s_list ) ) ) #line 151 "../../src/expand.c") ) ; #line 152 "../../src/expand.c"_auto_qq -> _node_permanent = 1 ; #line 153 "../../src/expand.c"{ #line 153 "../../src/expand.c"{ _auto__result = ( ( ( struct stmt * ) ( _auto_qq ) ) ) ; #line 153 "../../src/expand.c"#line 153 "../../src/expand.c"return _auto__result ; } } } } } } #line 158 "../../src/expand.c"switch ( _auto_this -> _node_base ) { #line 158 "../../src/expand.c"default : if #line 158 "../../src/expand.c"( _auto_this -> _stmt__O8.__C8_e ) #line 160 "../../src/expand.c"_auto_this -> _stmt__O8.__C8_e = _expr_expand ( ( struct expr * ) _auto_this -> _stmt__O8.__C8_e ) ; #line 161 "../../src/expand.c"break ; #line 162 "../../src/expand.c"case 166 : if ( _auto_this -> _stmt__O8.__C8_s2 ) _auto_this -> _stmt__O8.__C8_s2 = _stmt_expand ( ( struct stmt * ) _auto_this -> #line 162 "../../src/expand.c"_stmt__O8.__C8_s2 ) ; #line 164 "../../src/expand.c"break ; #line 165 "../../src/expand.c"case 116 : break ; #line 167 "../../src/expand.c"case 16 : if ( _auto_this -> _stmt__O9.__C9_for_init ) _auto_this -> _stmt__O9.__C9_for_init = _stmt_expand ( ( struct stmt * ) _auto_this -> #line 167 "../../src/expand.c"_stmt__O9.__C9_for_init ) ; #line 169 "../../src/expand.c"if ( _auto_this -> _stmt__O7.__C7_e2 ) _auto_this -> _stmt__O7.__C7_e2 = _expr_expand ( ( struct expr * ) _auto_this -> _stmt__O7.__C7_e2 ) ; #line 169 "../../src/expand.c"#line 170 "../../src/expand.c"break ; #line 171 "../../src/expand.c"case 115 : case 19 : case 28 : case 3 : case 7 : errorFI_PC__E ( ( int ) #line 171 "../../src/expand.c"'s' , ( char * ) "%kS in inline%n", _auto_this -> _node_base , expand_fn ) ; } #line 179 "../../src/expand.c"if ( _auto_this -> _stmt_s ) _auto_this -> _stmt_s = _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt_s ) #line 179 "../../src/expand.c"; #line 180 "../../src/expand.c"if ( _auto_this -> _stmt_s_list ) _auto_this -> _stmt_s_list = _stmt_expand ( ( struct stmt * ) _auto_this -> _stmt_s_list ) ; #line 180 "../../src/expand.c"#line 181 "../../src/expand.c"_auto_this -> _node_permanent = 1 ; #line 182 "../../src/expand.c"{ #line 182 "../../src/expand.c"{ _auto__result = ( struct stmt * ) _auto_this ; #line 182 "../../src/expand.c"return _auto__result ; } } } ; #line 185 "../../src/expand.c"Pexpr _expr_expand ( _auto_this ) register struct expr * _auto_this ; #line 186 "../../src/expand.c"{ #line 186 "../../src/expand.c"Pexpr _auto__result ; #line 187 "../../src/expand.c"if ( _auto_this == 0 ) errorFI_PC__E ( ( int ) 'i' , ( char * ) #line 187 "../../src/expand.c""expr.expand(0)") ; #line 189 "../../src/expand.c"switch ( _auto_this -> _node_base ) { #line 189 "../../src/expand.c"case 85 : if ( expand_tbl && ( ( ( ( #line 189 "../../src/expand.c"struct name * ) ( _auto_this ) ) ) -> _name_n_scope == 108 ) ) #line 191 "../../src/expand.c"{ #line 191 "../../src/expand.c"Pname _auto_n ; char * _auto_s ; Pname _auto_cn ; #line 192 "../../src/expand.c"_auto_n = ( ( ( struct name * ) ( _auto_this ) ) ) ; #line 193 "../../src/expand.c"_auto_s = _auto_n -> _expr__O3.__C3_string ; #line 194 "../../src/expand.c"if ( ( ( _auto_s [ 0 ] ) == '_' ) && ( ( _auto_s [ #line 194 "../../src/expand.c"1 ] ) == 'X' ) ) #line 194 "../../src/expand.c"break ; #line 195 "../../src/expand.c"_auto_cn = expand_fn -> _expr__O5.__C5_n_table -> _table_t_name ; #line 196 "../../src/expand.c"_auto_n -> _expr__O3.__C3_string = temp ( _auto_s , expand_fn -> _expr__O3.__C3_string , _auto_cn ? _auto_cn -> _expr__O3.__C3_string : ( ( ( char * #line 196 "../../src/expand.c") ( 0 ) ) ) ) ; } #line 198 "../../src/expand.c"case 144 : case 82 : case 83 : case 84 : case 150 : case 151 : case #line 198 "../../src/expand.c"152 : #line 205 "../../src/expand.c"case 81 : case 86 : case 30 : case 165 : case 169 : break ; #line 211 "../../src/expand.c"case 168 : if ( expand_tbl && ( _auto_this -> _expr__O3.__C3_e1 == 0 ) ) { #line 212 "../../src/expand.c"Pname _auto_fn ; Pfct _auto_f ; #line 213 "../../src/expand.c"_auto_fn = _auto_this -> _expr__O5.__C5_il -> _iline_fct_name ; #line 214 "../../src/expand.c"_auto_f = ( ( ( struct fct * ) ( _auto_fn -> _expr__O2.__C2_tp ) ) ) ; #line 215 "../../src/expand.c"if ( ( _auto_f -> _fct_returns == ( struct type * ) void_type ) && ( _auto_fn -> _name_n_oper != #line 215 "../../src/expand.c"161 ) ) #line 216 "../../src/expand.c"errorFI_PC__E ( ( int ) 's' , ( char * ) "non-value-returning inline%n called in value-returning inline%n", _auto_fn , expand_fn ) #line 216 "../../src/expand.c"; else #line 218 "../../src/expand.c"errorFPC__E ( ( char * ) "inline%n called before defined", _auto_fn ) ; } #line 220 "../../src/expand.c"break ; #line 221 "../../src/expand.c"case 68 : _auto_this -> _expr__O5.__C5_cond = _expr_expand ( ( struct expr * ) _auto_this -> _expr__O5.__C5_cond ) ; #line 223 "../../src/expand.c"default : if ( _auto_this -> _expr__O4.__C4_e2 ) _auto_this -> _expr__O4.__C4_e2 = _expr_expand ( ( struct expr * ) _auto_this -> #line 223 "../../src/expand.c"_expr__O4.__C4_e2 ) ; #line 225 "../../src/expand.c"case 44 : case 45 : if ( _auto_this -> _expr__O3.__C3_e1 ) _auto_this -> _expr__O3.__C3_e1 = _expr_expand ( ( struct expr * #line 225 "../../src/expand.c") _auto_this -> _expr__O3.__C3_e1 ) ; #line 228 "../../src/expand.c"break ; #line 229 "../../src/expand.c"case 113 : _auto_this -> _expr__O5.__C5_tp2 -> _node_permanent = 1 ; #line 231 "../../src/expand.c"_auto_this -> _expr__O3.__C3_e1 = _expr_expand ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 232 "../../src/expand.c"break ; } #line 235 "../../src/expand.c"_auto_this -> _node_permanent = 1 ; #line 236 "../../src/expand.c"{ #line 236 "../../src/expand.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 236 "../../src/expand.c"return _auto__result ; } } } ; #line 239 "../../src/expand.c"bit _expr_not_simple ( _auto_this ) register struct expr * _auto_this ; #line 246 "../../src/expand.c"{ #line 246 "../../src/expand.c"bit _auto__result ; int _auto_s ; #line 249 "../../src/expand.c"switch ( _auto_this -> _node_base ) { #line 249 "../../src/expand.c"default : { #line 251 "../../src/expand.c"{ _auto__result = 2 ; #line 251 "../../src/expand.c"return _auto__result ; } } #line 252 "../../src/expand.c"case 86 : case 150 : case 151 : case 82 : case 84 : case 83 : #line 252 "../../src/expand.c"#line 258 "../../src/expand.c"case 81 : case 85 : { #line 260 "../../src/expand.c"{ _auto__result = 0 ; #line 260 "../../src/expand.c"return _auto__result ; } } #line 261 "../../src/expand.c"case 30 : { #line 262 "../../src/expand.c"{ _auto__result = ( ( _auto_this -> _expr__O3.__C3_e1 == dummy ) ? 0: #line 262 "../../src/expand.c"( ( ( int ) ( _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) ) #line 262 "../../src/expand.c") ) ) ; #line 262 "../../src/expand.c"return _auto__result ; } } #line 263 "../../src/expand.c"case 145 : case 112 : { #line 265 "../../src/expand.c"{ _auto__result = _expr_not_simple ( ( struct expr * ) #line 265 "../../src/expand.c"_auto_this -> _expr__O4.__C4_e2 ) ; #line 265 "../../src/expand.c"return _auto__result ; } } #line 266 "../../src/expand.c"case 113 : case 45 : case 44 : { #line 269 "../../src/expand.c"{ _auto__result = _expr_not_simple ( ( struct #line 269 "../../src/expand.c"expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 269 "../../src/expand.c"return _auto__result ; } } #line 270 "../../src/expand.c"case 107 : case 46 : case 47 : { #line 273 "../../src/expand.c"{ _auto__result = _expr_not_simple ( ( struct #line 273 "../../src/expand.c"expr * ) _auto_this -> _expr__O4.__C4_e2 ) ; #line 273 "../../src/expand.c"return _auto__result ; } } #line 274 "../../src/expand.c"case 111 : _auto_s = _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 276 "../../src/expand.c"if ( 1 < _auto_s ) { #line 276 "../../src/expand.c"{ _auto__result = 2 ; #line 276 "../../src/expand.c"return _auto__result ; } } #line 277 "../../src/expand.c"if ( _auto_this -> _expr__O4.__C4_e2 == 0 ) { #line 277 "../../src/expand.c"{ _auto__result = _auto_s ; #line 277 "../../src/expand.c"return _auto__result ; } } #line 278 "../../src/expand.c"{ #line 278 "../../src/expand.c"{ _auto__result = ( _auto_s |= _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O4.__C4_e2 ) #line 278 "../../src/expand.c") ; #line 278 "../../src/expand.c"return _auto__result ; } } #line 279 "../../src/expand.c"case 50 : case 51 : case 53 : case 54 : case 55 : case 56 : #line 279 "../../src/expand.c"#line 285 "../../src/expand.c"case 57 : case 52 : case 65 : case 64 : case 58 : case 59 : case 60 : #line 285 "../../src/expand.c"#line 292 "../../src/expand.c"case 61 : case 62 : case 63 : case 66 : case 67 : case 71 : _auto_s = _expr_not_simple ( #line 292 "../../src/expand.c"( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 299 "../../src/expand.c"if ( 1 < _auto_s ) { #line 299 "../../src/expand.c"{ _auto__result = 2 ; #line 299 "../../src/expand.c"return _auto__result ; } } #line 300 "../../src/expand.c"{ #line 300 "../../src/expand.c"{ _auto__result = ( _auto_s |= _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O4.__C4_e2 ) #line 300 "../../src/expand.c") ; #line 300 "../../src/expand.c"return _auto__result ; } } #line 301 "../../src/expand.c"case 68 : _auto_s = _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O5.__C5_cond ) ; #line 303 "../../src/expand.c"if ( 1 < _auto_s ) { #line 303 "../../src/expand.c"{ _auto__result = 2 ; #line 303 "../../src/expand.c"return _auto__result ; } } #line 304 "../../src/expand.c"_auto_s |= _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 305 "../../src/expand.c"if ( 1 < _auto_s ) { #line 305 "../../src/expand.c"{ _auto__result = 2 ; #line 305 "../../src/expand.c"return _auto__result ; } } #line 306 "../../src/expand.c"{ #line 306 "../../src/expand.c"{ _auto__result = ( _auto_s |= _expr_not_simple ( ( struct expr * ) _auto_this -> _expr__O4.__C4_e2 ) #line 306 "../../src/expand.c") ; #line 306 "../../src/expand.c"return _auto__result ; 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -