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

📄 norm..c

📁 CFront1.0的源代码,第一代C++编译器的思想...
💻 C
📖 第 1 页 / 共 5 页
字号:
#line 373 "../../src/norm.c"#line 375 "../../src/norm.c"if ( _auto_this -> _basetype_b_name -> _node_base == 123 ) errorFI_PC__E ( ( int ) 'i' , ( char * #line 375 "../../src/norm.c") "TN%n in enumO", _auto_this -> _basetype_b_name ) ; #line 376 "../../src/norm.c"if ( _auto_this -> _basetype_b_const ) errorFPC__E ( ( char * ) "const enum%n", _auto_this -> _basetype_b_name ) ; #line 377 "../../src/norm.c"if ( _auto_en -> _enumdef_e_body == 2 ) { #line 377 "../../src/norm.c"_auto_en -> _enumdef_e_body = 1 ; #line 379 "../../src/norm.c"{ #line 379 "../../src/norm.c"{ _auto__result = _auto_this -> _basetype_b_name ; #line 379 "../../src/norm.c"return _auto__result ; } } } else #line 381 "../../src/norm.c"{ #line 381 "../../src/norm.c"if ( _auto_this -> _basetype_b_sto == 18 ) goto frr ; #line 383 "../../src/norm.c"{ #line 383 "../../src/norm.c"{ _auto__result = 0 ; #line 383 "../../src/norm.c"return _auto__result ; } } } } #line 387 "../../src/norm.c"default : if ( _auto_this -> _basetype_b_typedef ) errorFI_PC__E ( ( int ) #line 387 "../../src/norm.c"'w' , ( char * ) "illegal typedef ignored") ; #line 390 "../../src/norm.c"if ( _auto_this -> _basetype_b_sto == 18 ) { #line 390 "../../src/norm.c"frr : { #line 392 "../../src/norm.c"Pname _auto_fr ; #line 392 "../../src/norm.c"_auto_fr = _table_look ( ( struct table * ) ktbl , _auto_this -> _basetype_b_name -> _expr__O3.__C3_string , ( int ) 0 #line 392 "../../src/norm.c") ; #line 393 "../../src/norm.c"if ( _auto_fr == 0 ) errorFI_PC__E ( ( int ) 'i' , ( char * ) #line 393 "../../src/norm.c""cannot find friend%n", _auto_this -> _basetype_b_name ) ; #line 394 "../../src/norm.c"_auto_n = ( struct name * ) _name__ctor ( ( struct name * ) 0 , _auto_this -> _basetype_b_name -> #line 394 "../../src/norm.c"_expr__O3.__C3_string ) ; #line 395 "../../src/norm.c"_auto_n -> _name_n_sto = 18 ; #line 396 "../../src/norm.c"_auto_n -> _expr__O2.__C2_tp = _auto_fr -> _expr__O2.__C2_tp ; #line 397 "../../src/norm.c"{ #line 397 "../../src/norm.c"{ _auto__result = _auto_n ; #line 397 "../../src/norm.c"return _auto__result ; } } } } else #line 399 "../../src/norm.c"{ #line 399 "../../src/norm.c"_auto_n = ( struct name * ) _name__ctor ( ( struct #line 399 "../../src/norm.c"name * ) 0 , ( char * ) make_name ( ( int ) 'D' ) ) #line 399 "../../src/norm.c"; #line 401 "../../src/norm.c"_auto_n -> _expr__O2.__C2_tp = ( struct type * ) any_type ; #line 402 "../../src/norm.c"errorFI_PC__E ( ( int ) 'w' , ( char * ) "NX inDL") ; #line 403 "../../src/norm.c"{ #line 403 "../../src/norm.c"{ _auto__result = _auto_n ; #line 403 "../../src/norm.c"return _auto__result ; } } } } } ; #line 408 "../../src/norm.c"int _name_hide ( _auto_this ) register struct name * _auto_this ; #line 412 "../../src/norm.c"{ #line 412 "../../src/norm.c"struct name_list * _auto__Xthis__ctor_name_list ; #line 414 "../../src/norm.c"if ( _auto_this -> _node_base != 123 ) { #line 414 "../../src/norm.c"return ; } #line 415 "../../src/norm.c"if ( _auto_this -> _node_n_key == 0 ) { #line 415 "../../src/norm.c"if ( _auto_this -> _name_lex_level == bl_level ) { #line 415 "../../src/norm.c"#line 417 "../../src/norm.c"#line 418 "../../src/norm.c"if ( _auto_this -> _node_base != 123 ) errorFPC__E ( ( char * ) "%n redefined", _auto_this ) ; else #line 420 "../../src/norm.c"{ #line 420 "../../src/norm.c"errorFI_PC__E ( ( int ) 'w' , ( char * ) "%n redefined", _auto_this ) ; #line 420 "../../src/norm.c"} } #line 425 "../../src/norm.c"modified_tn = ( struct name_list * ) ( ( _auto__Xthis__ctor_name_list = 0 ) , ( #line 425 "../../src/norm.c"( _auto__Xthis__ctor_name_list = ( struct name_list * ) _new ( ( long ) 8) ) , ( #line 425 "../../src/norm.c"( _auto__Xthis__ctor_name_list -> _name_list_f = ( ( struct name * ) _auto_this ) ) , ( ( _auto__Xthis__ctor_name_list -> #line 425 "../../src/norm.c"_name_list_l = ( ( struct name_list * ) modified_tn ) ) , _auto__Xthis__ctor_name_list ) ) ) ) ; #line 425 "../../src/norm.c"#line 426 "../../src/norm.c"_auto_this -> _node_n_key = 159 ; } } ; #line 430 "../../src/norm.c"extern int set_scope ( _auto_tn ) struct name * _auto_tn ; #line 434 "../../src/norm.c"{ #line 434 "../../src/norm.c"Pbase _auto_b ; Pclass _auto_cl ; Plist _auto_l ; #line 435 "../../src/norm.c"if ( _auto_tn -> _node_base != 123 ) errorFI_PC__E ( ( int ) 'i' , ( char * ) #line 435 "../../src/norm.c""set_scope: not aTN %d %d", _auto_tn , _auto_tn -> _node_base ) ; #line 436 "../../src/norm.c"_auto_b = ( ( ( struct basetype * ) ( _auto_tn -> _expr__O2.__C2_tp ) ) ) ; #line 437 "../../src/norm.c"if ( _auto_b -> _basetype_b_name -> _expr__O2.__C2_tp -> _node_base != 6 ) errorFI_PC__E ( ( int ) 'i' , ( char #line 437 "../../src/norm.c"* ) "T of%n not aC (%k)", _auto_tn , _auto_b -> _basetype_b_name -> _expr__O2.__C2_tp -> _node_base ) ; #line 438 "../../src/norm.c"_auto_cl = ( ( ( struct classdef * ) ( _auto_b -> _basetype_b_name -> _expr__O2.__C2_tp ) ) ) ; #line 438 "../../src/norm.c"#line 439 "../../src/norm.c"for ( _auto_l = _auto_cl -> _classdef_tn_list ;_auto_l ;( _auto_l = _auto_l -> _name_list_l ) ) { #line 439 "../../src/norm.c"Pname _auto_n ; struct name_list * _auto__Xthis__ctor_name_list ; #line 440 "../../src/norm.c"_auto_n = _auto_l -> _name_list_f ; #line 441 "../../src/norm.c"_auto_n -> _node_n_key = ( _auto_n -> _name_lex_level ? 0: 159 ) ; #line 443 "../../src/norm.c"modified_tn = ( struct name_list * ) ( ( _auto__Xthis__ctor_name_list = 0 ) , ( ( _auto__Xthis__ctor_name_list = #line 443 "../../src/norm.c"( struct name_list * ) _new ( ( long ) 8) ) , ( ( _auto__Xthis__ctor_name_list -> #line 443 "../../src/norm.c"_name_list_f = ( ( struct name * ) _auto_n ) ) , ( ( _auto__Xthis__ctor_name_list -> _name_list_l = ( #line 443 "../../src/norm.c"( struct name_list * ) modified_tn ) ) , _auto__Xthis__ctor_name_list ) ) ) ) ; } } ; #line 447 "../../src/norm.c"extern int restore ( ) #line 448 "../../src/norm.c"{ #line 448 "../../src/norm.c"Plist _auto_l ; #line 449 "../../src/norm.c"for ( _auto_l = modified_tn ;_auto_l ;( _auto_l = _auto_l -> _name_list_l ) ) { #line 449 "../../src/norm.c"Pname _auto_n ; #line 450 "../../src/norm.c"_auto_n = _auto_l -> _name_list_f ; #line 451 "../../src/norm.c"_auto_n -> _node_n_key = ( ( _auto_n -> _name_lex_level <= bl_level ) ? 0: 159 ) ; } } ; #line 456 "../../src/norm.c"extern Pbase start_cl ( _auto_t , _auto_c , _auto_b ) int _auto_t ; struct name * _auto_c ; struct name * _auto_b ; #line 457 "../../src/norm.c"{ #line 457 "../../src/norm.c"Pbase _auto__result ; Pname _auto_n ; Pbase _auto_bt ; Pclass _auto_occl ; #line 458 "../../src/norm.c"if ( _auto_c == 0 ) _auto_c = ( struct name * ) _name__ctor ( ( struct name * #line 458 "../../src/norm.c") 0 , ( char * ) make_name ( ( int ) 'C' ) ) ; #line 458 "../../src/norm.c"#line 460 "../../src/norm.c"_auto_n = _name_tname ( ( struct name * ) _auto_c , _auto_t ) ; #line 461 "../../src/norm.c"_auto_n -> _name_where = curloc ; #line 462 "../../src/norm.c"_auto_bt = ( ( ( struct basetype * ) ( _auto_n -> _expr__O2.__C2_tp ) ) ) ; #line 463 "../../src/norm.c"if ( _auto_bt -> _node_base != 119 ) { #line 463 "../../src/norm.c"errorFPC__E ( ( char * ) "twoDs of%n:%t andC", _auto_n , _auto_bt ) #line 463 "../../src/norm.c"; #line 465 "../../src/norm.c"errorFI_PC__E ( ( int ) 'i' , ( char * ) "can't recover from previous errors") ; } #line 467 "../../src/norm.c"_auto_occl = ccl ; #line 468 "../../src/norm.c"ccl = ( ( ( struct classdef * ) ( _auto_bt -> _basetype_b_name -> _expr__O2.__C2_tp ) ) ) ; #line 468 "../../src/norm.c"#line 469 "../../src/norm.c"if ( ccl -> _type_defined ) { #line 469 "../../src/norm.c"errorFPC__E ( ( char * ) "C%n defined twice") ; #line 471 "../../src/norm.c"ccl -> _type_defined |= 010 ; } #line 473 "../../src/norm.c"ccl -> _type_defined |= 04 ; #line 474 "../../src/norm.c"if ( ccl -> _classdef_in_class = _auto_occl ) _auto_occl -> _classdef_tn_list = modified_tn ; #line 475 "../../src/norm.c"modified_tn = 0 ; #line 476 "../../src/norm.c"ccl -> _classdef_string = _auto_n -> _expr__O3.__C3_string ; #line 477 "../../src/norm.c"ccl -> _classdef_csu = _auto_t ; #line 478 "../../src/norm.c"if ( _auto_b ) ccl -> _classdef_clbase = _name_tname ( ( struct name * ) _auto_b , _auto_t ) ; #line 479 "../../src/norm.c"{ #line 479 "../../src/norm.c"{ _auto__result = _auto_bt ; #line 479 "../../src/norm.c"return _auto__result ; } } } ; #line 482 "../../src/norm.c"extern int end_cl ( ) #line 483 "../../src/norm.c"{ #line 483 "../../src/norm.c"Pclass _auto_occl ; Plist _auto_ol ; #line 484 "../../src/norm.c"_auto_occl = ccl -> _classdef_in_class ; #line 485 "../../src/norm.c"_auto_ol = ( _auto_occl ? _auto_occl -> _classdef_tn_list : ( ( ( struct name_list * ) ( 0 ) #line 485 "../../src/norm.c") ) ) ; #line 486 "../../src/norm.c"ccl -> _classdef_c_body = 2 ; #line 487 "../../src/norm.c"if ( modified_tn ) { #line 487 "../../src/norm.c"Plist _auto_local ; Plist _auto_l ; Plist _auto_nl ; #line 488 "../../src/norm.c"_auto_local = 0 ; #line 489 "../../src/norm.c"{ _auto_l = modified_tn ; #line 489 "../../src/norm.c"_auto_nl = 0 ; for ( ;_auto_l ;( _auto_l = _auto_nl ) ) #line 489 "../../src/norm.c"{ #line 489 "../../src/norm.c"_auto_nl = _auto_l -> _name_list_l ; #line 491 "../../src/norm.c"{ #line 491 "../../src/norm.c"Pname _auto_n ; #line 491 "../../src/norm.c"_auto_n = _auto_l -> _name_list_f ; #line 492 "../../src/norm.c"if ( _table_look ( ( struct table * ) ktbl , _auto_n -> _expr__O3.__C3_string , ( int ) 0 #line 492 "../../src/norm.c") ) #line 492 "../../src/norm.c"{ #line 492 "../../src/norm.c"_auto_l -> _name_list_l = _auto_ol ; #line 495 "../../src/norm.c"_auto_ol = _auto_l ; } else #line 497 "../../src/norm.c"{ #line 497 "../../src/norm.c"_auto_l -> _name_list_l = _auto_local ; #line 499 "../../src/norm.c"_auto_local = _auto_l ; } } } } #line 502 "../../src/norm.c"if ( ccl -> _classdef_tn_list = ( modified_tn = _auto_local ) ) restore ( ) #line 502 "../../src/norm.c"; } #line 504 "../../src/norm.c"modified_tn = _auto_ol ; #line 505 "../../src/norm.c"ccl = _auto_occl ; } ; #line 508 "../../src/norm.c"extern Pbase end_enum ( _auto_n , _auto_b ) struct name * _auto_n ; struct name * _auto_b ; #line 509 "../../src/norm.c"{ #line 509 "../../src/norm.c"Pbase _auto__result ; Pbase _auto_bt ; Penum _auto_en ; #line 510 "../../src/norm.c"if ( _auto_n == 0 ) _auto_n = ( struct name * ) _name__ctor ( ( struct name * #line 510 "../../src/norm.c") 0 , ( char * ) make_name ( ( int ) 'E' ) ) ; #line 510 "../../src/norm.c"#line 511 "../../src/norm.c"_auto_n = ( struct name * ) _name_tname ( ( struct name * ) _auto_n , 13 ) ; #line 512 "../../src/norm.c"_auto_bt = ( ( ( struct basetype * ) ( _auto_n -> _expr__O2.__C2_tp ) ) ) ; #line 513 "../../src/norm.c"if ( _auto_bt -> _node_base != 121 ) { #line 513 "../../src/norm.c"errorFPC__E ( ( char * ) "twoDs of%n:%t and enum", _auto_n , _auto_bt ) #line 513 "../../src/norm.c"; #line 515 "../../src/norm.c"errorFI_PC__E ( ( int ) 'i' , ( char * ) "can't recover from previous errors") ; } #line 517 "../../src/norm.c"_auto_en = ( ( ( struct enumdef * ) ( _auto_bt -> _basetype_b_name -> _expr__O2.__C2_tp ) ) ) #line 517 "../../src/norm.c"; #line 518 "../../src/norm.c"_auto_en -> _enumdef_e_body = 2 ; #line 519 "../../src/norm.c"_auto_en -> _enumdef_mem = name_unlist ( ( struct nlist * ) ( ( ( struct nlist * ) ( #line 519 "../../src/norm.c"_auto_b ) ) ) ) ; #line 520 "../../src/norm.c"if ( _auto_en -> _type_defined ) { #line 520 "../../src/norm.c"errorFPC__E ( ( char * ) "enum%n defined twice", _auto_n ) ; #line 522 "../../src/norm.c"_auto_en -> _type_defined |= 010 ; } #line 524 "../../src/norm.c"_auto_en -> _type_defined |= 04 ; #line 525 "../../src/norm.c"{ #line 525 "../../src/norm.c"{ _auto__result = _auto_bt ; #line 525 "../../src/norm.c"return _auto__result ; } } } ; #line 528 "../../src/norm.c"Pname _name_tdef ( _auto_this ) register struct name * _auto_this ; #line 532 "../../src/norm.c"{ #line 532 "../../src/norm.c"Pname _auto__result ; Pname _auto_n ; struct name_list * _auto__Xthis__ctor_name_list ; #line 534 "../../src/norm.c"_auto_n = _table_insert ( ( struct table * ) ktbl , ( struct name * ) _auto_this , ( int #line 534 "../../src/norm.c") 0 ) ; #line 535 "../../src/norm.c"if ( _auto_this -> _expr__O2.__C2_tp == 0 ) errorFI_PC__E ( ( int ) 'i' , ( char * #line 535 "../../src/norm.c") "typedef%n tp==0", _auto_this ) ; #line 536 "../../src/norm.c"_auto_n -> _node_base = ( _auto_this -> _node_base = 123 ) ; #line 537 "../../src/norm.c"_auto_n -> _node_permanent = 1 ; #line 538 "../../src/norm.c"_auto_this -> _expr__O2.__C2_tp -> _node_permanent = 1 ; #line 539 "../../src/norm.c"modified_tn = ( struct name_list * ) ( ( _auto__Xthis__ctor_name_list = 0 ) , ( ( _auto__Xthis__ctor_name_list = #line 539 "../../src/norm.c"( struct name_list * ) _new ( ( long ) 8) ) , ( ( _auto__Xthis__ctor_name_list -> #line 539 "../../src/norm.c"_name_list_f = ( ( struct name * ) _auto_n ) ) , ( ( _auto__Xthis__ctor_name_list -> _name_list_l = ( #line 539 "../../src/norm.c"( struct name_list * ) modified_tn ) ) , _auto__Xthis__ctor_name_list ) ) ) ) ; #line 540 "../../src/norm.c"{ #line 540 "../../src/norm.c"{ _auto__result = _auto_n ; #line 540 "../../src/norm.c"return _auto__result ; } } } ; #line 543 "../../src/norm.c"Pname _name_tname ( _auto_this , _auto_csu ) register struct name * _auto_this ; int _auto_csu ; #line 551 "../../src/norm.c"{ #line 551 "../../src/norm.c"Pname _auto__result ; #line 553 "../../src/norm.c"switch ( _auto_this -> _node_base ) { #line 553 "../../src/norm.c"case 123 : { #line 555 "../../src/norm.c"{ _auto__result = ( struct name * ) #line 555 "../../src/norm.c"_auto_this ; #line 555 "../../src/norm.c"return _auto__result ; } } #line 556 "../../src/norm.c"case 85 : { #line 557 "../../src/norm.c"Pname _auto_tn ; Pname _auto_on ; struct name_list * _auto__Xthis__ctor_name_list ; struct enumdef * _auto__Xthis__ctor_enumdef ; #line 557 "../../src/norm.c"_auto_tn = _table_insert ( ( struct table * ) ktbl , ( struct name * ) _auto_this , ( int #line 557 "../../src/norm.c") 0 ) ; #line 559 "../../src/norm.c"_auto_on = ( struct name * ) _name__ctor ( ( struct name * ) 0 , ( char #line 559 "../../src/norm.c"* ) 0 ) ; #line 560 "../../src/norm.c"_auto_tn -> _node_base = 123 ; #line 561 "../../src/norm.c"_auto_tn -> _name_lex_level = _auto_this -> _name_lex_level ; #line 562 "../../src/norm.c"modified_tn = ( struct name_list * ) ( ( _auto__Xthis__ctor_name_list = 0 ) , ( ( _auto__Xthis__ctor_name_list = #line 562 "../../src/norm.c"( struct name_list * ) _new ( ( long ) 8) ) , ( ( _auto__Xthis__ctor_name_list -> #line 562 "../../src/norm.c"_name_list_f = ( ( struct name * ) _auto_tn ) ) , ( ( _auto__Xthis__ctor_name_list -> _name_list_l = ( #line 562 "../../src/norm.c"( struct name_list * ) modified_tn ) ) , _auto__Xthis__ctor_name_list ) ) ) ) ; #line 563 "../../src/norm.c"_auto_tn -> _name_n_list = ( _auto_this -> _name_n_list = 0 ) ; #line 564 "../../src/norm.c"_auto_this -> _expr__O3.__C3_string = _auto_tn -> _expr__O3.__C3_string ; #line 565 "../../src/norm.c"( * _auto_on ) = ( * _auto_this ) 

⌨️ 快捷键说明

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