9#ifndef FORTRAN_RUNTIME_ENVIRONMENT_H_
10#define FORTRAN_RUNTIME_ENVIRONMENT_H_
12#include "flang/Common/optional.h"
13#include "flang/Decimal/decimal.h"
17namespace Fortran::runtime {
21RT_OFFLOAD_VAR_GROUP_BEGIN
23constexpr bool isHostLittleEndian{
false};
24#elif FLANG_LITTLE_ENDIAN
25constexpr bool isHostLittleEndian{
true};
27#error host endianness is not known
29RT_OFFLOAD_VAR_GROUP_END
32enum class Convert { Unknown, Native, LittleEndian, BigEndian, Swap };
34RT_API_ATTRS Fortran::common::optional<Convert> GetConvertFromString(
35 const char *, std::size_t);
43 void Configure(
int argc,
const char *argv[],
const char *envp[],
46 const char *name, std::size_t name_length,
const Terminator &terminator);
49 const char **argv{
nullptr};
52 int listDirectedOutputLineLengthLimit{79};
53 enum decimal::FortranRounding defaultOutputRoundingMode{
54 decimal::FortranRounding::RoundNearest};
55 Convert conversion{Convert::Unknown};
56 bool noStopMessage{
false};
57 bool defaultUTF8{
false};
58 bool checkPointerDeallocation{
true};
61RT_OFFLOAD_VAR_GROUP_BEGIN
63RT_OFFLOAD_VAR_GROUP_END
Definition: terminator.h:23
Definition: environment-default-list.h:26
Definition: environment.h:37