Warning: This file is not a C or C++ file. It does not have highlighting.
1 | /*===-- include/flang/ISO_Fortran_binding_wrapper.h ---------------*- 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 | |
10 | #ifndef FORTRAN_ISO_FORTRAN_BINDING_WRAPPER_H_ |
11 | #define FORTRAN_ISO_FORTRAN_BINDING_WRAPPER_H_ |
12 | |
13 | /* A thin wrapper around flang/include/ISO_Fortran_binding.h |
14 | * This header file must be included when ISO_Fortran_binding.h |
15 | * definitions/declarations are needed in Flang compiler/runtime |
16 | * sources. The inclusion of Common/api-attrs.h below sets up |
17 | * proper values for the macros used in ISO_Fortran_binding.h |
18 | * for the device offload builds. |
19 | * flang/include/ISO_Fortran_binding.h is made a standalone |
20 | * header file so that it can be used on its own in users' |
21 | * C/C++ programs. |
22 | */ |
23 | |
24 | /* clang-format off */ |
25 | #include <stddef.h> |
26 | #include "Common/api-attrs.h" |
27 | #ifdef __cplusplus |
28 | namespace Fortran { |
29 | namespace ISO { |
30 | #define FORTRAN_ISO_NAMESPACE_ ::Fortran::ISO |
31 | #endif /* __cplusplus */ |
32 | #include "ISO_Fortran_binding.h" |
33 | #ifdef __cplusplus |
34 | } // namespace ISO |
35 | } // namespace Fortran |
36 | #endif /* __cplusplus */ |
37 | /* clang-format on */ |
38 | |
39 | #endif /* FORTRAN_ISO_FORTRAN_BINDING_WRAPPER_H_ */ |
40 |
Warning: This file is not a C or C++ file. It does not have highlighting.