[libcxx-commits] [libcxx] [libc++] use copy_file_range for fs::copy (PR #109211)
Florian Mayer via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Jan 7 03:33:52 PST 2025
Jannik =?utf-8?q?Glückert?= <jannik.glueckert at gmail.com>,Louis Dionne
<ldionne.2 at gmail.com>,Louis Dionne <ldionne.2 at gmail.com>,Louis Dionne
<ldionne.2 at gmail.com>,
Jannik =?utf-8?q?Glückert?= <jannik.glueckert at gmail.com>,
Jannik =?utf-8?q?Glückert?= <jannik.glueckert at gmail.com>,
Jannik =?utf-8?q?Glückert?= <jannik.glueckert at gmail.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/109211 at github.com>
fmayer wrote:
We got another error related to this on the sanitizer buildbot
```
FAILED: libcxx/src/CMakeFiles/cxx_static.dir/filesystem/operations.cpp.o
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ -DLIBCXX_BUILDING_LIBCXXABI -DLIBC_NAMESPACE=__llvm_libc_common_utils -D_LIBCPP_BUILDING_LIBRARY -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D_LIBCPP_LINK_PTHREAD_LIB -D_LIBCPP_LINK_RT_LIB -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/libcxx/src -I/home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/sanitizer_common/symbolizer/RTSanitizerCommonSymbolizerInternal.i386/symbolizer/libcxx/include/c++/v1 -I/home/b/sanitizer-x86_64-linux/build/llvm-project/libcxxabi/include -I/home/b/sanitizer-x86_64-linux/build/llvm-project/runtimes/cmake/Modules/../../../libc -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -m32 -U_FILE_OFFSET_BITS -fPIC -flto -Oz -g0 -DNDEBUG -target i386-unknown-linux-gnu -Wno-unused-command-line-argument -include /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/sanitizer_common/symbolizer/../sanitizer_redefine_builtins.h -DSANITIZER_COMMON_REDEFINE_BUILTINS_IN_STD -Wno-language-extension-token -Wno-macro-redefined -std=c++23 -faligned-allocation -nostdinc++ -fvisibility-inlines-hidden -fvisibility=hidden -fsized-deallocation -Wall -Wextra -Wnewline-eof -Wshadow -Wwrite-strings -Wno-unused-parameter -Wno-long-long -Werror=return-type -Wextra-semi -Wundef -Wunused-template -Wformat-nonliteral -Wzero-length-array -Wdeprecated-redundant-constexpr-static-def -Wno-user-defined-literals -Wno-covered-switch-default -Wno-suggest-override -Wno-error -fno-exceptions -fno-rtti -MD -MT libcxx/src/CMakeFiles/cxx_static.dir/filesystem/operations.cpp.o -MF libcxx/src/CMakeFiles/cxx_static.dir/filesystem/operations.cpp.o.d -o libcxx/src/CMakeFiles/cxx_static.dir/filesystem/operations.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/libcxx/src/filesystem/operations.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/libcxx/src/filesystem/operations.cpp:246:46: error: cannot initialize a parameter of type '__off64_t *' (aka 'long long *') with an rvalue of type 'off_t *' (aka 'long *')
246 | if ((res = ::copy_file_range(read_fd.fd, &off_in, write_fd.fd, &off_out, count, 0)) == -1) {
| ^~~~~~~
/usr/lib/gcc-cross/i686-linux-gnu/14/../../../../i686-linux-gnu/include/unistd.h:1142:49: note: passing argument to parameter '__pinoff' here
1142 | ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
| ^
1 error generated.
```
https://github.com/llvm/llvm-project/pull/109211
More information about the libcxx-commits
mailing list