[flang-commits] [flang] [Flang] Implement RENAME intrinsic (code-gen + runtime entry point) (PR #98359)
Michael Klemm via flang-commits
flang-commits at lists.llvm.org
Thu Jul 11 09:42:47 PDT 2024
================
@@ -55,6 +56,36 @@ static RT_API_ATTRS void TransferImpl(Descriptor &result,
extern "C" {
RT_EXT_API_GROUP_BEGIN
+void RTDECL(Rename)(const Descriptor &path1, const Descriptor &path2,
+ const Descriptor *status, const char *sourceFile, int line) {
+ Terminator terminator{sourceFile, line};
+
+ char *pathSrc{EnsureNullTerminated(
+ path1.OffsetElement(), path1.ElementBytes(), terminator)};
+ char *pathDst{EnsureNullTerminated(
+ path2.OffsetElement(), path2.ElementBytes(), terminator)};
+
+ // We simply call rename(2) from POSIX
+ int result = rename(pathSrc, pathDst);
----------------
mjklemm wrote:
Done.
https://github.com/llvm/llvm-project/pull/98359
More information about the flang-commits
mailing list