/*
 * Testcase to make sure that if we externally reference a versioned symbol
 * that we always get the right one.
 */
#include <stdio.h>
#include "vers.h"

extern int foo_1();
extern int foo_2();
extern int foo_3();
extern int foo_4();

int
main()
{
  printf("Expect 4,    get %d\n", foo_1());
  printf("Expect 13,   get %d\n", foo_2());
  printf("Expect 103,  get %d\n", foo_3());
  printf("Expect 1003, get %d\n", foo_4());
  return 0;
}

SYMVER(foo_1, show_foo@);
SYMVER(foo_2, show_foo@VERS_1.1);
SYMVER(foo_3, show_foo@VERS_1.2);
SYMVER(foo_4, show_foo@VERS_2.0);
