// RUN: %clang -O0 %s -o %t && %run %t

// XFAIL: i386-netbsd && asan

#include <assert.h>
#include <fcntl.h>
#include <limits.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

int main(int argc, char **argv) {
  char symlink_path[PATH_MAX];
  snprintf(symlink_path, sizeof(symlink_path), "%s_%d.symlink", argv[0],
           getpid());
  remove(symlink_path);
  int res = symlink(argv[0], symlink_path);
  assert(!res);

  char readlinkat_path[PATH_MAX];
  int res2 = readlinkat(AT_FDCWD, symlink_path, readlinkat_path,
                        sizeof(readlinkat_path));
  assert(res2 >= 0);
  readlinkat_path[res2] = '\0';
  assert(!strcmp(readlinkat_path, argv[0]));

  return 0;
}
