[flang-commits] [flang] 02602c0 - [flang] Add runtime interface for GET_ENVIRONMENT_VARIABLE

Diana Picus via flang-commits flang-commits at lists.llvm.org
Tue Oct 12 01:30:34 PDT 2021


Author: Diana Picus
Date: 2021-10-12T08:11:47Z
New Revision: 02602c02a3019a99f1949510a08692e57d2dd270

URL: https://github.com/llvm/llvm-project/commit/02602c02a3019a99f1949510a08692e57d2dd270
DIFF: https://github.com/llvm/llvm-project/commit/02602c02a3019a99f1949510a08692e57d2dd270.diff

LOG: [flang] Add runtime interface for GET_ENVIRONMENT_VARIABLE

Split into 2 entry points, one for the length and one for the value.

Differential Revision: https://reviews.llvm.org/D111392

Added: 
    

Modified: 
    flang/include/flang/Runtime/command.h

Removed: 
    


################################################################################
diff  --git a/flang/include/flang/Runtime/command.h b/flang/include/flang/Runtime/command.h
index f5f20a5a4f29a..45a9f11269c7c 100644
--- a/flang/include/flang/Runtime/command.h
+++ b/flang/include/flang/Runtime/command.h
@@ -35,6 +35,21 @@ std::int32_t RTNAME(ArgumentValue)(
 // Try to get the significant length of the n'th argument.
 // Returns 0 if it doesn't manage.
 std::int64_t RTNAME(ArgumentLength)(std::int32_t n);
+
+// 16.9.84 GET_ENVIRONMENT_VARIABLE
+// We're breaking up the interface into several 
diff erent functions, since most
+// of the parameters are optional.
+
+// Try to get the value of the environment variable specified by NAME.
+// Returns a STATUS as described in the standard.
+std::int32_t RTNAME(EnvVariableValue)(const Descriptor &name,
+    const Descriptor *value = nullptr, bool trim_name = true,
+    const Descriptor *errmsg = nullptr);
+
+// Try to get the significant length of the environment variable specified by
+// NAME. Returns 0 if it doesn't manage.
+std::int64_t RTNAME(EnvVariableLength)(
+    const Descriptor &name, bool trim_name = true);
 }
 } // namespace Fortran::runtime
 


        


More information about the flang-commits mailing list