@@ -632,54 +632,55 @@ static unsigned long expand_and_crc_sym(struct symbol *sym, unsigned long crc)
632
632
void export_symbol (const char * name )
633
633
{
634
634
struct symbol * sym ;
635
+ unsigned long crc ;
636
+ int has_changed = 0 ;
635
637
636
638
sym = find_symbol (name , SYM_NORMAL , 0 );
637
- if (!sym )
639
+ if (!sym ) {
638
640
error_with_pos ("export undefined symbol %s" , name );
639
- else {
640
- unsigned long crc ;
641
- int has_changed = 0 ;
641
+ return ;
642
+ }
642
643
643
- if (flag_dump_defs )
644
- fprintf (debugfile , "Export %s == <" , name );
644
+ if (flag_dump_defs )
645
+ fprintf (debugfile , "Export %s == <" , name );
645
646
646
- expansion_trail = (struct symbol * )-1L ;
647
+ expansion_trail = (struct symbol * )-1L ;
647
648
648
- sym -> expansion_trail = expansion_trail ;
649
- expansion_trail = sym ;
650
- crc = expand_and_crc_sym (sym , 0xffffffff ) ^ 0xffffffff ;
649
+ sym -> expansion_trail = expansion_trail ;
650
+ expansion_trail = sym ;
651
+ crc = expand_and_crc_sym (sym , 0xffffffff ) ^ 0xffffffff ;
651
652
652
- sym = expansion_trail ;
653
- while (sym != (struct symbol * )-1L ) {
654
- struct symbol * n = sym -> expansion_trail ;
653
+ sym = expansion_trail ;
654
+ while (sym != (struct symbol * )-1L ) {
655
+ struct symbol * n = sym -> expansion_trail ;
655
656
656
- if (sym -> status != STATUS_UNCHANGED ) {
657
- if (!has_changed ) {
658
- print_location ();
659
- fprintf (stderr , "%s: %s: modversion "
660
- "changed because of changes "
661
- "in " , flag_preserve ? "error" :
662
- "warning" , name );
663
- } else
664
- fprintf (stderr , ", " );
665
- print_type_name (sym -> type , sym -> name );
666
- if (sym -> status == STATUS_DEFINED )
667
- fprintf (stderr , " (became defined)" );
668
- has_changed = 1 ;
669
- if (flag_preserve )
670
- errors ++ ;
657
+ if (sym -> status != STATUS_UNCHANGED ) {
658
+ if (!has_changed ) {
659
+ print_location ();
660
+ fprintf (stderr ,
661
+ "%s: %s: modversion changed because of changes in " ,
662
+ flag_preserve ? "error" : "warning" ,
663
+ name );
664
+ } else {
665
+ fprintf (stderr , ", " );
671
666
}
672
- sym -> expansion_trail = 0 ;
673
- sym = n ;
667
+ print_type_name (sym -> type , sym -> name );
668
+ if (sym -> status == STATUS_DEFINED )
669
+ fprintf (stderr , " (became defined)" );
670
+ has_changed = 1 ;
671
+ if (flag_preserve )
672
+ errors ++ ;
674
673
}
675
- if (has_changed )
676
- fprintf (stderr , "\n" );
674
+ sym -> expansion_trail = 0 ;
675
+ sym = n ;
676
+ }
677
+ if (has_changed )
678
+ fprintf (stderr , "\n" );
677
679
678
- if (flag_dump_defs )
679
- fputs (">\n" , debugfile );
680
+ if (flag_dump_defs )
681
+ fputs (">\n" , debugfile );
680
682
681
- printf ("#SYMVER %s 0x%08lx\n" , name , crc );
682
- }
683
+ printf ("#SYMVER %s 0x%08lx\n" , name , crc );
683
684
}
684
685
685
686
/*----------------------------------------------------------------------*/
0 commit comments