[libc-commits] [libc] [libc] implement pathconf/fpathconf (PR #87165)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Thu Jun 20 08:23:23 PDT 2024


================
@@ -0,0 +1,24 @@
+//===-- Linux implementation of pathconf ----------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "src/unistd/pathconf.h"
+#include "src/errno/libc_errno.h"
+#include "src/sys/statvfs/linux/statfs_utils.h"
+#include "src/unistd/linux/pathconf_utils.h"
+
+namespace LIBC_NAMESPACE {
+
+LLVM_LIBC_FUNCTION(long, pathconf, (const char *path, int name)) {
+  if (cpp::optional<statfs_utils::LinuxStatFs> result =
+          statfs_utils::linux_statfs(path)) {
+    return pathconfig(result.value(), name);
+  }
----------------
nickdesaulniers wrote:

Don't use `{}` for single statement control flow.  That's general LLVM style.

https://github.com/llvm/llvm-project/pull/87165


More information about the libc-commits mailing list