// RUN: %clangxx -O0 -g %s -o %t -lcrypt && %run %t

// crypt() is missing from Android and -lcrypt from darwin.
// UNSUPPORTED: android, darwin

#include <assert.h>
#include <unistd.h>
#include <cstring>

int
main (int argc, char** argv)
{
  {
    char *p = crypt("abcdef", "xz");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$1$");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$5$");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$6$");
    volatile size_t z = strlen(p);
  }
}

// RUN: %clangxx -O0 -g %s -o %t -lcrypt && %run %t

// crypt() is missing from Android and -lcrypt from darwin.
// UNSUPPORTED: android, darwin

#include <assert.h>
#include <unistd.h>
#include <cstring>
#include <crypt.h>

int
main (int argc, char** argv)
{
  {
    char *p = crypt("abcdef", "xz");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$1$");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$5$");
    volatile size_t z = strlen(p);
  }
  {
    char *p = crypt("abcdef", "$6$");
    volatile size_t z = strlen(p);
  }
}

Add a missing include in test.
Add a missing include in test.

A fix for r373993.

git-svn-id: c199f293c43da69278bea8e88f92242bf3aa95f7@374448 91177308-0d34-0410-b5e6-96231b3b80d8
