Gary Klimowicz | 9e7548a | 2019-12-20 12:52:07 -0800 | [diff] [blame] | 1 | #if 0 /*===-- runtime/magic-numbers.h -----------------------------------===*/ |
Gary Klimowicz | 3e656068 | 2019-12-11 11:13:48 -0800 | [diff] [blame] | 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 | * |
Gary Klimowicz | 9e7548a | 2019-12-20 12:52:07 -0800 | [diff] [blame] | 7 | *===--------------------------------------------------------------------===*/ |
Gary Klimowicz | 3e656068 | 2019-12-11 11:13:48 -0800 | [diff] [blame] | 8 | #endif |
| 9 | #if 0 |
| 10 | This header can be included into both Fortran and C. |
peter klausler | fc94aa6 | 2019-10-11 13:46:58 -0700 | [diff] [blame] | 11 | |
| 12 | This file defines various code values that need to be exported |
| 13 | to predefined Fortran standard modules as well as to C/C++ |
| 14 | code in the compiler and runtime library. |
| 15 | These include: |
| 16 | - the error/end code values that can be returned |
| 17 | to an IOSTAT= or STAT= specifier on a Fortran I/O statement |
| 18 | or coindexed data reference (see Fortran 2018 12.11.5, |
| 19 | 16.10.2, and 16.10.2.33) |
peter klausler | 491122d | 2020-01-16 13:51:25 -0800 | [diff] [blame] | 20 | Codes from <errno.h>, e.g. ENOENT, are assumed to be positive |
| 21 | and are used "raw" as IOSTAT values. |
peter klausler | 8df28f0 | 2020-11-10 15:13:02 -0800 | [diff] [blame^] | 22 | |
| 23 | CFI_ERROR_xxx and CFI_INVALID_xxx macros from ISO_Fortran_binding.h |
| 24 | have small positive values. The FORTRAN_RUNTIME_STAT_xxx macros here |
| 25 | start at 100 so as to never conflict with those codes. |
peter klausler | fc94aa6 | 2019-10-11 13:46:58 -0700 | [diff] [blame] | 26 | #endif |
| 27 | #ifndef FORTRAN_RUNTIME_MAGIC_NUMBERS_H_ |
| 28 | #define FORTRAN_RUNTIME_MAGIC_NUMBERS_H_ |
| 29 | |
| 30 | #define FORTRAN_RUNTIME_IOSTAT_END (-1) |
| 31 | #define FORTRAN_RUNTIME_IOSTAT_EOR (-2) |
| 32 | #define FORTRAN_RUNTIME_IOSTAT_FLUSH (-3) |
peter klausler | 3b63571 | 2020-02-13 14:41:56 -0800 | [diff] [blame] | 33 | #define FORTRAN_RUNTIME_IOSTAT_INQUIRE_INTERNAL_UNIT 256 |
peter klausler | fc94aa6 | 2019-10-11 13:46:58 -0700 | [diff] [blame] | 34 | |
peter klausler | 8df28f0 | 2020-11-10 15:13:02 -0800 | [diff] [blame^] | 35 | #define FORTRAN_RUNTIME_STAT_FAILED_IMAGE 101 |
| 36 | #define FORTRAN_RUNTIME_STAT_LOCKED 102 |
| 37 | #define FORTRAN_RUNTIME_STAT_LOCKED_OTHER_IMAGE 103 |
| 38 | #define FORTRAN_RUNTIME_STAT_STOPPED_IMAGE 104 |
| 39 | #define FORTRAN_RUNTIME_STAT_UNLOCKED 105 |
| 40 | #define FORTRAN_RUNTIME_STAT_UNLOCKED_FAILED_IMAGE 106 |
peter klausler | fc94aa6 | 2019-10-11 13:46:58 -0700 | [diff] [blame] | 41 | #endif |