std::filesystem::copy_symlink(3)

NAME
std::filesystem::copy_symlink - std::filesystem::copy_symlink

Synopsis
   Defined in header <filesystem>
   void copy_symlink( const std::filesystem::path& from, (1) (since C++17)
   const std::filesystem::path& to);
   void copy_symlink( const std::filesystem::path& from,
   const std::filesystem::path& to, (2) (since C++17)
   std::error_code& ec ) noexcept;
   Copies a symlink to another location.
   1) Effectively calls f(read_symlink(from), to) where f is create_symlink or
   create_directory_symlink depending on whether from resolves to a file or directory.
   2) Effectively calls f(read_symlink(from, ec), to, ec) where f is create_symlink or
   create_directory_symlink depending on whether from resolves to a file or directory.

Parameters
   from - path to a symbolic link to copy
   to - destination path of the new symlink
   ec - out-parameter for error reporting in the non-throwing overload

Return value
   (none)

Exceptions
   The overload that does not take a std::error_code& parameter throws
   filesystem::filesystem_error on underlying OS API errors, constructed with from as
   the first path argument, to as the second path argument, and the OS error code as
   the error code argument. The overload taking a std::error_code& parameter sets it to
   the OS API error code if an OS API call fails, and executes ec.clear() if no errors
   occur. Any overload not marked noexcept may throw std::bad_alloc if memory
   allocation fails.

See also
   copy copies files or directories
   (C++17) (function)
   copy_file copies file contents
   (C++17) (function)
   create_symlink
   create_directory_symlink creates a symbolic link
   (C++17) (function)
   (C++17)
   read_symlink obtains the target of a symbolic link
   (C++17) (function)