1//===--- PragmaKinds.h - #pragma comment() kinds ---------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_CLANG_BASIC_PRAGMA_KINDS_H
10#define LLVM_CLANG_BASIC_PRAGMA_KINDS_H
11
12namespace clang {
13
14enum PragmaMSCommentKind {
15 PCK_Unknown,
16 PCK_Linker, // #pragma comment(linker, ...)
17 PCK_Lib, // #pragma comment(lib, ...)
18 PCK_Compiler, // #pragma comment(compiler, ...)
19 PCK_ExeStr, // #pragma comment(exestr, ...)
20 PCK_User // #pragma comment(user, ...)
21};
22
23enum PragmaMSStructKind {
24 PMSST_OFF, // #pragms ms_struct off
25 PMSST_ON // #pragms ms_struct on
26};
27
28enum PragmaFloatControlKind {
29 PFC_Unknown,
30 PFC_Precise, // #pragma float_control(precise, [,on])
31 PFC_NoPrecise, // #pragma float_control(precise, off)
32 PFC_Except, // #pragma float_control(except [,on])
33 PFC_NoExcept, // #pragma float_control(except, off)
34 PFC_Push, // #pragma float_control(push)
35 PFC_Pop // #pragma float_control(pop)
36};
37}
38
39#endif
40