#include <stdio.h>
#include <bfd_stdint.h>

extern void foo (void);
extern void check_ptr_eq (void (*) (void), void (*) (void));

void
new_foo (void)
{
}

__asm__(".symver new_foo, foo@@VERS_2.0");
#if defined __powerpc64__ && defined _CALL_AIXDESC && !defined _CALL_LINUX
__asm__(".symver .new_foo, .foo@@VERS_2.0");
#endif

#if defined(__GNUC__) && (__GNUC__ * 1000 + __GNUC_MINOR__) >= 4005
__attribute__ ((noinline, noclone))
#else
__attribute__ ((noinline))
#endif
int
bar (void)
{
  return (intptr_t) &foo == 0x12345678 ? 1 : 0;
}

int
main(void)
{
  bar ();
  check_ptr_eq (&foo, &new_foo);
  printf("PASS\n");
  return 0;
}
