12#ifndef FORTRAN_RUNTIME_EXTENSIONS_H_
13#define FORTRAN_RUNTIME_EXTENSIONS_H_
15#include "flang/Runtime/entry-names.h"
17#define FORTRAN_PROCEDURE_NAME(name) name##_
19#include "flang/Runtime/entry-names.h"
25typedef std::uint32_t uid_t;
26typedef std::uint32_t gid_t;
34void FORTRAN_PROCEDURE_NAME(flush)(
const int &unit);
37void FORTRAN_PROCEDURE_NAME(fdate)(
char *string, std::int64_t length);
39void RTNAME(Free)(std::intptr_t ptr);
42std::int32_t FORTRAN_PROCEDURE_NAME(iargc)();
45void FORTRAN_PROCEDURE_NAME(getarg)(
46 std::int32_t &n,
char *arg, std::int64_t length);
49gid_t RTNAME(GetGID)();
52uid_t RTNAME(GetUID)();
55void FORTRAN_PROCEDURE_NAME(getlog)(
char *name, std::int64_t length);
57std::intptr_t RTNAME(Malloc)(std::size_t size);
60std::int64_t RTNAME(Signal)(std::int64_t number, void (*handler)(int));
63void RTNAME(Sleep)(std::int64_t seconds);
68std::int64_t FORTRAN_PROCEDURE_NAME(access)(
const char *name,
69 std::int64_t nameLength,
const char *mode, std::int64_t modeLength);