libstdc++: Fix filesystem build for Windows
I only half remembered to use char_type instead of char for filesystem paths, so that it works with wchar_t on Windows. This fixes the bootstrap failure. libstdc++-v3/ChangeLog: * src/filesystem/dir-common.h (_Dir_base::_At_path): Use char_type consistently for paths.
This commit is contained in:
parent
133d0d422e
commit
bb1f266a7d
1 changed files with 9 additions and 5 deletions
|
@ -99,18 +99,22 @@ struct _Dir_base
|
|||
struct _At_path
|
||||
{
|
||||
// No file descriptor given, so interpret the pathname relative to the CWD.
|
||||
_At_path(const char* p) noexcept
|
||||
_At_path(const posix::char_type* p) noexcept
|
||||
: pathname(p), dir_fd(fdcwd()), offset(0)
|
||||
{ }
|
||||
|
||||
_At_path(int fd, const char* p, size_t offset) noexcept
|
||||
_At_path(int fd, const posix::char_type* p, size_t offset) noexcept
|
||||
: pathname(p), dir_fd(fd), offset(offset)
|
||||
{ }
|
||||
|
||||
const char* path() const noexcept { return pathname; }
|
||||
const posix::char_type*
|
||||
path() const noexcept { return pathname; }
|
||||
|
||||
int dir() const noexcept { return dir_fd; }
|
||||
const char* path_at_dir() const noexcept { return pathname + offset; }
|
||||
int
|
||||
dir() const noexcept { return dir_fd; }
|
||||
|
||||
const posix::char_type*
|
||||
path_at_dir() const noexcept { return pathname + offset; }
|
||||
|
||||
private:
|
||||
const posix::char_type* pathname; // Full path relative to CWD.
|
||||
|
|
Loading…
Add table
Reference in a new issue