(root)/
binutils-2.41/
ld/
testsuite/
ld-elfvers/
vers5.c
       1  /*
       2   * Testcase to verify that foo@BAR and foo@@BAR are correctly detected
       3   * as a multiply defined symbol.
       4   */
       5  #include "vers.h"
       6  
       7  const char * bar1 = "asdf";
       8  const char * bar2 = "asdf";
       9  
      10  int
      11  bar()
      12  {
      13  	return 3;
      14  }
      15  
      16  int
      17  original_foo()
      18  {
      19  	return 1+bar();
      20  
      21  }
      22  
      23  int
      24  old_foo()
      25  {
      26  	return 10+bar();
      27  
      28  }
      29  
      30  int
      31  old_foo1()
      32  {
      33  	return 100+bar();
      34  
      35  }
      36  
      37  int
      38  new_foo()
      39  {
      40  	return 1000+bar();
      41  
      42  }
      43  
      44  FUNC_SYMVER(original_foo, foo@);
      45  FUNC_SYMVER(old_foo, foo@VERS_1.1);
      46  FUNC_SYMVER(old_foo1, foo@VERS_1.2);
      47  FUNC_SYMVER(new_foo, foo@@VERS_1.2);
      48  
      49  int
      50  main ()
      51  {
      52    return 0;
      53  }