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

📄 expr..c

📁 c 语言编译器 源代码- c compiler
💻 C
📖 第 1 页 / 共 5 页
字号:
char * _auto_p ; char * _auto_q ; #line 410 "../../src/expr.c"_auto_p = _auto_this -> _expr__O3.__C3_string ; #line 411 "../../src/expr.c"_auto_q = LARGEST_INT ; #line 412 "../../src/expr.c"do if ( ( * ( _auto_p ++ ) ) > ( * ( _auto_q ++ #line 412 "../../src/expr.c") ) ) #line 412 "../../src/expr.c"goto lng ; while ( * _auto_p ) ; } } #line 415 "../../src/expr.c"goto nrm ; } #line 417 "../../src/expr.c"case 84 : _auto_this -> _expr__O2.__C2_tp = ( struct type * ) char_type ; #line 419 "../../src/expr.c"goto save ; #line 420 "../../src/expr.c"case 83 : _auto_this -> _expr__O2.__C2_tp = ( struct type * ) double_type ; #line 422 "../../src/expr.c"goto save ; #line 423 "../../src/expr.c"case 81 : { #line 425 "../../src/expr.c"int _auto_ll ; Pvec _auto_v ; struct vec * _auto__Xthis__ctor_vec ; #line 425 "../../src/expr.c"_auto_ll = c_strlen ( _auto_this -> _expr__O3.__C3_string ) ; #line 426 "../../src/expr.c"_auto_v = ( struct vec * ) ( ( _auto__Xthis__ctor_vec = 0 ) , ( ( _auto__Xthis__ctor_vec = #line 426 "../../src/expr.c"( struct vec * ) _new ( ( long ) 20) ) , ( ( Nt ++ #line 426 "../../src/expr.c") , ( ( _auto__Xthis__ctor_vec -> _node_base = 110 ) , ( ( _auto__Xthis__ctor_vec -> _vec_typ = ( ( #line 426 "../../src/expr.c"struct type * ) char_type ) ) , ( ( _auto__Xthis__ctor_vec -> _vec_dim = ( ( struct expr * #line 426 "../../src/expr.c") 0 ) ) , _auto__Xthis__ctor_vec ) ) ) ) ) ) ; #line 427 "../../src/expr.c"_auto_v -> _vec_size = _auto_ll ; #line 428 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = ( struct type * ) _auto_v ; #line 429 "../../src/expr.c"goto save ; } #line 431 "../../src/expr.c"save : if ( const_save ) { #line 433 "../../src/expr.c"int _auto_ll ; char * _auto_p ; #line 434 "../../src/expr.c"_auto_ll = c_strlen ( _auto_this -> _expr__O3.__C3_string ) ; #line 435 "../../src/expr.c"_auto_p = ( ( ( char * ) ( _new ( ( long ) _auto_ll ) ) #line 435 "../../src/expr.c") ) ; #line 436 "../../src/expr.c"strcpy ( _auto_p , _auto_this -> _expr__O3.__C3_string ) ; #line 437 "../../src/expr.c"_auto_this -> _expr__O3.__C3_string = _auto_p ; } #line 439 "../../src/expr.c"{ #line 439 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 439 "../../src/expr.c"return _auto__result ; } } #line 441 "../../src/expr.c"case 34 : _expr__dtor ( _auto_this , 1) ; #line 443 "../../src/expr.c"if ( cc -> _dcl_context_tot ) { #line 443 "../../src/expr.c"{ #line 561 "../../src/cfront.h"( ( struct name * ) cc -> _dcl_context_c_this ) -> #line 561 "../../src/cfront.h"_name_n_used ++ ; } #line 445 "../../src/expr.c"{ #line 445 "../../src/expr.c"{ _auto__result = ( struct expr * ) cc -> _dcl_context_c_this ; #line 445 "../../src/expr.c"return _auto__result ; } } } #line 447 "../../src/expr.c"errorFPC__E ( ( char * ) "this used in nonC context") ; #line 448 "../../src/expr.c"_auto_n = ( struct name * ) _name__ctor ( ( struct name * ) 0 , ( char #line 448 "../../src/expr.c"* ) "this") ; #line 449 "../../src/expr.c"_auto_n -> _expr__O2.__C2_tp = ( struct type * ) any_type ; #line 450 "../../src/expr.c"{ #line 450 "../../src/expr.c"{ _auto__result = ( struct expr * ) _table_insert ( ( struct table * ) _auto_tbl , ( #line 450 "../../src/expr.c"struct name * ) _auto_n , ( int ) 0 ) ; #line 450 "../../src/expr.c"return _auto__result ; } } #line 452 "../../src/expr.c"case 85 : { #line 454 "../../src/expr.c"Pexpr _auto_ee ; #line 454 "../../src/expr.c"_auto_ee = _table_find_name ( ( struct table * ) _auto_tbl , ( struct name * ) ( ( ( #line 454 "../../src/expr.c"struct name * ) ( _auto_this ) ) ) , ( int ) 0 , ( #line 454 "../../src/expr.c"struct expr * ) 0 ) ; #line 455 "../../src/expr.c"if ( _auto_ee -> _expr__O2.__C2_tp -> _node_base == 158 ) { #line 455 "../../src/expr.c"{ _auto__result = _expr_contents ( ( struct expr * ) #line 455 "../../src/expr.c"_auto_ee ) ; #line 455 "../../src/expr.c"return _auto__result ; } } #line 456 "../../src/expr.c"{ #line 456 "../../src/expr.c"{ _auto__result = _auto_ee ; #line 456 "../../src/expr.c"return _auto__result ; } } } #line 458 "../../src/expr.c"case 30 : _auto_t = _auto_this -> _expr__O5.__C5_tp2 ; #line 460 "../../src/expr.c"if ( _auto_t ) { #line 460 "../../src/expr.c"_type_dcl ( ( struct type * ) _auto_t , _auto_tbl ) ; #line 462 "../../src/expr.c"if ( _auto_this -> _expr__O3.__C3_e1 && ( _auto_this -> _expr__O3.__C3_e1 != dummy ) ) { #line 462 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = _expr_typ ( ( #line 462 "../../src/expr.c"struct expr * ) _auto_this -> _expr__O3.__C3_e1 , _auto_tbl ) ; #line 464 "../../src/expr.c"if ( _auto_this -> _expr__O3.__C3_e1 && ( _auto_this -> _expr__O3.__C3_e1 -> _node_permanent == 0 ) ) _expr_del ( ( struct #line 464 "../../src/expr.c"expr * ) _auto_this -> _expr__O3.__C3_e1 ) ; #line 465 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = dummy ; } } else #line 468 "../../src/expr.c"{ #line 468 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = _expr_typ ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 , _auto_tbl ) #line 468 "../../src/expr.c"; #line 470 "../../src/expr.c"_auto_this -> _expr__O5.__C5_tp2 = _auto_this -> _expr__O3.__C3_e1 -> _expr__O2.__C2_tp ; } #line 472 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = ( struct type * ) int_type ; #line 473 "../../src/expr.c"{ #line 473 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 473 "../../src/expr.c"return _auto__result ; } } #line 475 "../../src/expr.c"case 113 : { #line 476 "../../src/expr.c"Ptype _auto_tt ; #line 477 "../../src/expr.c"_auto_tt = ( _auto_t = _auto_this -> _expr__O5.__C5_tp2 ) ; #line 478 "../../src/expr.c"_type_dcl ( ( struct type * ) _auto_tt , _auto_tbl ) ; #line 479 "../../src/expr.c"zaq : switch ( _auto_tt -> _node_base ) { #line 481 "../../src/expr.c"case 97 : _auto_tt = ( ( ( struct basetype * #line 481 "../../src/expr.c") ( _auto_tt ) ) ) -> _basetype_b_name -> _expr__O2.__C2_tp ; #line 483 "../../src/expr.c"goto zaq ; #line 484 "../../src/expr.c"case 158 : case 125 : if ( ( ( ( struct ptr * ) ( _auto_tt ) #line 484 "../../src/expr.c") ) -> _ptr_rdo ) #line 486 "../../src/expr.c"errorFPC__E ( ( char * ) "*const in cast") ; #line 487 "../../src/expr.c"_auto_tt = ( ( ( struct ptr * ) ( _auto_tt ) ) ) -> _ptr_typ ; #line 488 "../../src/expr.c"goto zaq ; #line 489 "../../src/expr.c"case 110 : _auto_tt = ( ( ( struct vec * ) ( _auto_tt ) ) ) -> #line 489 "../../src/expr.c"_vec_typ ; #line 491 "../../src/expr.c"goto zaq ; #line 492 "../../src/expr.c"case 108 : _auto_tt = ( ( ( struct fct * ) ( _auto_tt ) ) ) -> #line 492 "../../src/expr.c"_fct_returns ; #line 494 "../../src/expr.c"goto zaq ; #line 495 "../../src/expr.c"default : if ( ( ( ( struct basetype * ) ( _auto_tt ) ) ) #line 495 "../../src/expr.c"-> _basetype_b_const ) #line 496 "../../src/expr.c"errorFPC__E ( ( char * ) "const in cast") ; } #line 502 "../../src/expr.c"_auto_tt = _auto_t ; #line 504 "../../src/expr.c"if ( _auto_this -> _expr__O3.__C3_e1 == dummy ) { #line 504 "../../src/expr.c"errorFPC__E ( ( char * ) "expression missing for cast") ; #line 506 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = ( struct type * ) any_type ; #line 507 "../../src/expr.c"{ #line 507 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 507 "../../src/expr.c"return _auto__result ; } } } #line 509 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = _expr_typ ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 , _auto_tbl ) ; #line 509 "../../src/expr.c"#line 510 "../../src/expr.c"{ #line 510 "../../src/expr.c"Ptype _auto_etp ; #line 510 "../../src/expr.c"_auto_etp = _auto_this -> _expr__O3.__C3_e1 -> _expr__O2.__C2_tp ; #line 511 "../../src/expr.c"while ( _auto_etp -> _node_base == 97 ) _auto_etp = ( ( ( struct basetype * ) ( _auto_etp ) #line 511 "../../src/expr.c") ) -> _basetype_b_name -> _expr__O2.__C2_tp ; #line 513 "../../src/expr.c"if ( _auto_etp -> _node_base == 119 ) { #line 513 "../../src/expr.c"int _auto_i ; #line 514 "../../src/expr.c"_auto_i = can_coerce ( ( struct type * ) _auto_tt , ( struct type * ) _auto_etp ) ; #line 516 "../../src/expr.c"if ( ( _auto_i == 1 ) && Ncoerce ) { #line 516 "../../src/expr.c"Pname _auto_cn ; Pclass _auto_cl ; Pref _auto_r ; Pexpr _auto_rr ; Pexpr _auto_c ; struct ref * _auto__Xthis__ctor_ref ; #line 517 "../../src/expr.c"_auto_cn = ( ( ( struct basetype * ) ( _auto_etp ) ) ) -> _basetype_b_name ; #line 518 "../../src/expr.c"_auto_cl = ( ( ( struct classdef * ) ( _auto_cn -> _expr__O2.__C2_tp ) ) ) ; #line 519 "../../src/expr.c"_auto_r = ( struct ref * ) ( ( _auto__Xthis__ctor_ref = 0 ) , ( ( ( #line 519 "../../src/expr.c"_auto__Xthis__ctor_ref = 0 ) , ( _auto__Xthis__ctor_ref = ( struct ref * ) _expr__ctor ( ( ( struct #line 519 "../../src/expr.c"expr * ) ( _auto__Xthis__ctor_ref ) ) , 45 , ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) #line 519 "../../src/expr.c", ( struct expr * ) 0 ) ) ) , ( ( _auto__Xthis__ctor_ref -> _expr__O5.__C5_mem = #line 519 "../../src/expr.c"( ( struct name * ) Ncoerce ) ) , _auto__Xthis__ctor_ref ) ) ) ; #line 520 "../../src/expr.c"_auto_rr = _expr_typ ( ( struct expr * ) _auto_r , _auto_tbl ) ; #line 521 "../../src/expr.c"_auto_c = ( struct expr * ) _expr__ctor ( ( struct expr * ) 0 , 146 , ( #line 521 "../../src/expr.c"struct expr * ) _auto_rr , ( struct expr * ) 0 ) ; #line 522 "../../src/expr.c"_auto_c -> _expr__O5.__C5_fct_name = Ncoerce ; #line 523 "../../src/expr.c"_auto_c -> _expr__O2.__C2_tp = _auto_tt ; #line 524 "../../src/expr.c"( * _auto_this ) = ( * ( ( ( struct expr * ) ( _auto_c ) #line 524 "../../src/expr.c") ) ) ; #line 525 "../../src/expr.c"_expr__dtor ( ( struct expr * ) _auto_c , 1) ; #line 526 "../../src/expr.c"{ #line 526 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 526 "../../src/expr.c"return _auto__result ; } } } } #line 530 "../../src/expr.c"switch ( _auto_etp -> _node_base ) { #line 530 "../../src/expr.c"case 38 : if ( _auto_tt -> #line 530 "../../src/expr.c"_node_base == 38 ) #line 532 "../../src/expr.c"{ #line 532 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = _auto_t ; #line 534 "../../src/expr.c"{ #line 534 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 534 "../../src/expr.c"return _auto__result ; } } } #line 536 "../../src/expr.c"errorFPC__E ( ( char * ) "cast of void value") ; #line 537 "../../src/expr.c"case 141 : _auto_this -> _expr__O2.__C2_tp = ( struct type * ) any_type ; #line 539 "../../src/expr.c"{ #line 539 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 539 "../../src/expr.c"return _auto__result ; } } } #line 542 "../../src/expr.c"legloop : switch ( _auto_tt -> _node_base ) { #line 543 "../../src/expr.c"case 97 : _auto_tt = ( ( #line 543 "../../src/expr.c"( struct basetype * ) ( _auto_tt ) ) ) -> _basetype_b_name -> _expr__O2.__C2_tp ; #line 545 "../../src/expr.c"goto legloop ; #line 546 "../../src/expr.c"case 38 : switch ( _auto_etp -> _node_base ) { #line 547 "../../src/expr.c"case 119 : switch ( _auto_this -> _expr__O3.__C3_e1 -> _node_base ) #line 547 "../../src/expr.c"#line 549 "../../src/expr.c"{ #line 549 "../../src/expr.c"case 157 : case 109 : case 146 : { #line 553 "../../src/expr.c"Pname _auto_cln ; Pclass _auto_cl ; #line 553 "../../src/expr.c"_auto_cln = _type_is_cl_obj ( ( struct type * ) _auto_etp ) ; #line 554 "../../src/expr.c"_auto_cl = ( ( ( struct classdef * ) ( _auto_cln -> _expr__O2.__C2_tp ) ) ) ; #line 555 "../../src/expr.c"if ( ( _table_look ( ( struct table * ) ( ( struct classdef * ) _auto_cl ) #line 555 "../../src/expr.c"-> _classdef_memtbl , ( char * ) "_dtor", ( int ) 0 ) ) ) #line 555 "../../src/expr.c"#line 555 "../../src/expr.c"errorFI_PC__E ( ( int ) 's' , ( char * ) "cannot castCO to void") ; } } #line 558 "../../src/expr.c"break ; } #line 560 "../../src/expr.c"break ; #line 561 "../../src/expr.c"case 125 : switch ( _auto_etp -> _node_base ) { #line 562 "../../src/expr.c"case 119 : errorFPC__E ( ( char * ) #line 562 "../../src/expr.c""cannot castCO toP") ; #line 565 "../../src/expr.c"break ; } #line 567 "../../src/expr.c"break ; #line 569 "../../src/expr.c"case 158 : if ( ( ( ( _auto_this -> _expr__O3.__C3_e1 -> _node_base == 109 ) || ( _auto_this -> #line 569 "../../src/expr.c"_expr__O3.__C3_e1 -> _node_base == 146 ) ) || _expr_lval ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 , ( int #line 569 "../../src/expr.c") 0 ) ) && ( _type_tsizeof ( ( struct type * ) ( ( ( #line 569 "../../src/expr.c"struct ptr * ) ( _auto_tt ) ) ) -> _ptr_typ ) <= _type_tsizeof ( ( struct type * #line 569 "../../src/expr.c") _auto_etp ) ) ) #line 571 "../../src/expr.c"{ #line 571 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = _expr_address ( ( struct expr * ) _auto_this -> _expr__O3.__C3_e1 ) #line 571 "../../src/expr.c"; #line 574 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = _auto_t ; #line 575 "../../src/expr.c"{ #line 575 "../../src/expr.c"{ _auto__result = _expr_contents ( _auto_this ) ; #line 575 "../../src/expr.c"return _auto__result ; } } } else #line 578 "../../src/expr.c"errorFI_PC__E ( ( int ) 0 , ( char * ) #line 578 "../../src/expr.c""cannot cast%t to%t", _auto_etp , _auto_t ) ; #line 579 "../../src/expr.c"break ; #line 581 "../../src/expr.c"case 119 : _auto_this -> _node_base = 157 ; #line 584 "../../src/expr.c"_auto_this -> _expr__O3.__C3_e1 = ( struct expr * ) _expr__ctor ( ( struct expr * ) 0 , 140 , #line 584 "../../src/expr.c"( struct expr * ) _auto_this -> _expr__O3.__C3_e1 , ( struct expr * ) 0 ) ; #line 585 "../../src/expr.c"{ #line 585 "../../src/expr.c"{ _auto__result = _expr_typ ( _auto_this , _auto_tbl ) ; #line 585 "../../src/expr.c"return _auto__result ; } } #line 587 "../../src/expr.c"case 5 : case 21 : case 29 : case 22 : case 15 : case 11 : #line 587 "../../src/expr.c"#line 593 "../../src/expr.c"switch ( _auto_etp -> _node_base ) { #line 593 "../../src/expr.c"case 119 : errorFPC__E ( ( char * ) "cannot castCO to%k", _auto_tt -> #line 593 "../../src/expr.c"_node_base ) ; #line 596 "../../src/expr.c"break ; } #line 598 "../../src/expr.c"break ; } #line 601 "../../src/expr.c"_auto_this -> _expr__O2.__C2_tp = _auto_t ; #line 602 "../../src/expr.c"{ #line 602 "../../src/expr.c"{ _auto__result = ( struct expr * ) _auto_this ; #line 602 "../../src/expr.c"return _auto__result ; } } } } #line 605 "../../src/expr.c"case 157 : { #line 606 "../../src/expr.c"Ptype _auto_tt ; Pclass _auto_cl ; Pname _auto_cn ; #line 606 "../../src/expr.c"_auto_tt = _auto_this -> _expr__O5.__C5_tp2 ; #line 611 "../../src/expr.c"_type_dcl ( ( struct type * ) _auto_tt , _auto_tbl ) ; #line 612 "../../src/expr.c"vv : switch ( _auto_tt -> _node_base ) { #line 614 "../../src/expr.c"case 97 : _auto_tt = ( ( ( struct basetype * #line 614 "../../src/expr.c") ( _auto_tt ) ) ) -> _basetype_b_name -> _ex

⌨️ 快捷键说明

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