| 619 | } |
| 620 | |
| 621 | bool __equivalent(const path& p1, const path& p2, error_code* ec) { |
| 622 | ErrorHandler<bool> err("equivalent", ec, &p1, &p2); |
| 623 | |
| 624 | error_code ec1, ec2; |
| 625 | StatT st1 = {}, st2 = {}; |
| 626 | auto s1 = detail::posix_stat(p1.native(), st1, &ec1); |
| 627 | if (!exists(s1)) |
| 628 | return err.report(errc::not_supported); |
| 629 | auto s2 = detail::posix_stat(p2.native(), st2, &ec2); |
| 630 | if (!exists(s2)) |
| 631 | return err.report(errc::not_supported); |
| 632 | |
| 633 | return detail::stat_equivalent(st1, st2); |
| 634 | } |
| 635 | |
| 636 | uintmax_t __file_size(const path& p, error_code* ec) { |
| 637 | ErrorHandler<uintmax_t> err("file_size", ec, &p); |
no test coverage detected