================ @@ -37,5 +75,19 @@ void FORTRAN_PROCEDURE_NAME(getarg)( (void)RTNAME(GetCommandArgument)( n, &value, nullptr, nullptr, __FILE__, __LINE__); } + +void FORTRAN_PROCEDURE_NAME(getlog)(std::int8_t *arg, std::int64_t length) { + std::array<char, LOGIN_NAME_MAX + 1> str; + int error = getlogin_r(str.data(), str.size()); + assert(error == 0 && "getlogin_r returned an error"); ---------------- jeanPerier wrote:
Prefer emitting a Fortran fatal runtime error here. Can be done as: ``` Terminator terminator{__FILE__, __LINE__}; if (error != 0) terminator.Crash("getlogin_r returned error %d", error); ``` or simply ``` Terminator terminator{__FILE__, __LINE__}; RUNTIME_CHECK(terminator, error == 0); ``` https://github.com/llvm/llvm-project/pull/70917 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits