1// -*- C++ -*-
2//===--------------------------- float.h ----------------------------------===//
3//
4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef _LIBCPP_FLOAT_H
11#define _LIBCPP_FLOAT_H
12
13/*
14    float.h synopsis
15
16Macros:
17
18    FLT_ROUNDS
19    FLT_EVAL_METHOD     // C99
20    FLT_RADIX
21
22    FLT_MANT_DIG
23    DBL_MANT_DIG
24    LDBL_MANT_DIG
25
26    FLT_HAS_SUBNORM     // C11
27    DBL_HAS_SUBNORM     // C11
28    LDBL_HAS_SUBNORM    // C11
29
30    DECIMAL_DIG         // C99
31    FLT_DECIMAL_DIG     // C11
32    DBL_DECIMAL_DIG     // C11
33    LDBL_DECIMAL_DIG    // C11
34
35    FLT_DIG
36    DBL_DIG
37    LDBL_DIG
38
39    FLT_MIN_EXP
40    DBL_MIN_EXP
41    LDBL_MIN_EXP
42
43    FLT_MIN_10_EXP
44    DBL_MIN_10_EXP
45    LDBL_MIN_10_EXP
46
47    FLT_MAX_EXP
48    DBL_MAX_EXP
49    LDBL_MAX_EXP
50
51    FLT_MAX_10_EXP
52    DBL_MAX_10_EXP
53    LDBL_MAX_10_EXP
54
55    FLT_MAX
56    DBL_MAX
57    LDBL_MAX
58
59    FLT_EPSILON
60    DBL_EPSILON
61    LDBL_EPSILON
62
63    FLT_MIN
64    DBL_MIN
65    LDBL_MIN
66
67    FLT_TRUE_MIN        // C11
68    DBL_TRUE_MIN        // C11
69    LDBL_TRUE_MIN       // C11
70
71*/
72
73#include <__config>
74
75#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
76#pragma GCC system_header
77#endif
78
79#include_next <float.h>
80
81#ifdef __cplusplus
82
83#ifndef FLT_EVAL_METHOD
84#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
85#endif
86
87#ifndef DECIMAL_DIG
88#define DECIMAL_DIG __DECIMAL_DIG__
89#endif
90
91#endif // __cplusplus
92
93#endif  // _LIBCPP_FLOAT_H
94