Back to index

cell-binutils  2.17cvs20070401
vers5.c
Go to the documentation of this file.
00001 /*
00002  * Testcase to verify that foo@BAR and foo@@BAR are correctly detected
00003  * as a multiply defined symbol.
00004  */
00005 const char * bar1 = "asdf";
00006 const char * bar2 = "asdf";
00007 
00008 int
00009 bar()
00010 {
00011        return 3;
00012 }
00013 
00014 int
00015 original_foo()
00016 {
00017        return 1+bar();
00018 
00019 }
00020 
00021 int
00022 old_foo()
00023 {
00024        return 10+bar();
00025 
00026 }
00027 
00028 int
00029 old_foo1()
00030 {
00031        return 100+bar();
00032 
00033 }
00034 
00035 int
00036 new_foo()
00037 {
00038        return 1000+bar();
00039 
00040 }
00041 
00042 __asm__(".symver original_foo,foo@");
00043 __asm__(".symver old_foo,foo@VERS_1.1");
00044 __asm__(".symver old_foo1,foo@VERS_1.2");
00045 __asm__(".symver new_foo,foo@@VERS_1.2");
00046 
00047 int
00048 main ()
00049 {
00050   return 0;
00051 }