/* { dg-do preprocess } */

#if __has_include ("stdlib.h")
#else
#error error 1
#endif
#if __has_include (<stdlib.h>)
#else
#error error 2
#endif
#if !__has_include ("stdlib.h")
#error error 3
#elif !__has_include (<stdlib.h>)
#error error 4
#endif
#if __has_include ("stdlib.h") && __has_include (<stdlib.h>)
#else
#error error 5
#endif
#if !defined(__has_include)
#error error 6
#endif
#ifndef __has_include
#error error 7
#endif
#ifdef __has_include
#else
#error error 8
#endif
#define m1 __has_include("stdlib.h")
#define m2 ("stdlib.h")
#define m3 ("has-include-1-nonexistent.h")
#define m4 has-include-1-nonexistent-2.h>)
#define m5 <stdlib.h>
#if !m1
#error error 9
#endif
#if !__has_include m2
#error error 10
#endif
#if __has_include m3
#error error 11
#endif
#if __has_include (<m4
#error error 12
#endif
#if !__has_include (m5)
#error error 13
#endif
__has_include (<stdlib.h>)		/* { dg-error "used outside of preprocessing directive" } */
m1					/* { dg-error "used outside of preprocessing directive" } */
#if 1
m1					/* { dg-error "used outside of preprocessing directive" } */
#endif
#if 0
#elif 1
m1					/* { dg-error "used outside of preprocessing directive" } */
#endif
#if 0
m1
#endif
#if 0
#elif 0
m1
#endif
#if __has_include "stdlib.h")		/* { dg-error "missing" } */
#endif
#if __has_include (stdlib.h)		/* { dg-error "operator|missing" } */
#endif
#if __has_include ()			/* { dg-error "operator|missing" } */
#endif
#if __has_include )			/* { dg-error "operator|missing" } */
#endif
#if __has_include ("stdlib.h)
#endif
/* { dg-error "operator|missing\[^\n\r]*after" "" { target *-*-* } .-2 } */
/* { dg-warning "missing terminating" "" { target *-*-* } .-3 } */
#if __has_include (stdlib.h>)		/* { dg-error "operator|missing" } */
#endif
#if __has_include ("stdlib.h"		/* { dg-error "missing" } */
#endif
#if __has_include (			/* { dg-error "operator|missing" } */
#endif
#if __has_include			/* { dg-error "operator|missing" } */
#endif
#if __has_include"stdlib.h"		/* { dg-error "missing" } */
#endif
#if __has_include'h'			/* { dg-error "operator|missing" } */
#endif
#if __has_include('h'			/* { dg-error "operator|missing" } */
#endif
#if __has_include('h')			/* { dg-error "operator" } */
#endif
#define H(h) __has_include(h)
#if H(<stdlib.h>)
#else
#error error 14
#endif
void
foo ()
{
#pragma omp parallel if (__has_include ("<stdlib.h>"))
  ;
}
