1*abeeae57SPhoebe Wang // RUN: %clang_cc1 -fsyntax-only -verify -triple i686-linux-pc %s
2*abeeae57SPhoebe Wang // RUN: %clang_cc1 -fsyntax-only -verify -triple i686-linux-pc -target-feature +sse2 %s -DHAVE
3*abeeae57SPhoebe Wang // RUN: %clang_cc1 -fsyntax-only -verify -triple x86_64-linux-pc %s -DHAVE
4e3f289c9SErich Keane // RUN: %clang_cc1 -fsyntax-only -verify -triple spir-unknown-unknown %s -DHAVE
5e3f289c9SErich Keane // RUN: %clang_cc1 -fsyntax-only -verify -triple armv7a-linux-gnu %s -DHAVE
6e3f289c9SErich Keane // RUN: %clang_cc1 -fsyntax-only -verify -triple aarch64-linux-gnu %s -DHAVE
7e3f289c9SErich Keane 
8e3f289c9SErich Keane #ifdef HAVE
9e3f289c9SErich Keane // expected-no-diagnostics
10e3f289c9SErich Keane #endif // HAVE
11e3f289c9SErich Keane 
12e3f289c9SErich Keane #ifndef HAVE
13e3f289c9SErich Keane // expected-error@+2{{_Float16 is not supported on this target}}
14e3f289c9SErich Keane #endif // !HAVE
15e3f289c9SErich Keane _Float16 f;
16e3f289c9SErich Keane 
17e3f289c9SErich Keane #ifndef HAVE
18e3f289c9SErich Keane // expected-error@+2{{invalid suffix 'F16' on floating constant}}
19e3f289c9SErich Keane #endif // !HAVE
20e3f289c9SErich Keane const auto g = 1.1F16;
21