https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107814

            Bug ID: 107814
           Summary: [13 regression]
                    experimental/filesystem/iterators/error_reporting.cc
                    FAILs
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
  Target Milestone: ---
            Target: i386-pc-solaris2.11, amd64-pc-solaris2.11

Since 20221114, experimental/filesystem/iterators/error_reporting.cc FAILs on
Solaris/x86 only, 32 and 64-bit, while SPARC is fine:

FAIL: experimental/filesystem/iterators/error_reporting.cc execution test

/vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/experimental/filesystem/iterators/error_reporting.cc:112:
void test02(): Assertion 'ec.value() == EIO' failed.

Running the test under truss on i386 vs. sparc shows:

* i386:

380:    mkdirat(AT_FDCWD,
"filesystem-test.error_reporting.4042030604.aA7VId/subdir", 0777) = 0
380:    openat64(AT_FDCWD, "filesystem-test.error_reporting.4042030604.aA7VId",
O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
380:    fcntl(3, F_GETFL)                               = 8192
                FOFFMAX
380:    fstatat64(3, NULL, 0xFEFFD8C0, 0)               = 0
380:        d=0x04390012 i=2368576 m=0042755 l=3  u=2110  g=4620  sz=3
380:            at = Nov 22 14:15:46 MET 2022  [ 1669122946.599365773 ]
380:            mt = Nov 22 14:15:46 MET 2022  [ 1669122946.599784611 ]
380:            ct = Nov 22 14:15:46 MET 2022  [ 1669122946.599784611 ]
380:        bsz=131072 blks=1     fs=zfs
380:    llseek(3, 0, SEEK_CUR)                          = 0
380:    fcntl(3, F_SETFD, 0x00000001)                   = 0
380:    fstatat64(AT_FDCWD,
"filesystem-test.error_reporting.4042030604.aA7VId/su\x01", 0xFEFFD8D0,
AT_SYMLINK_NOFOLLOW) Err#2 ENOENT

* sparc:

14724:  mkdirat(AT_FDCWD,
"filesystem-test.error_reporting.2190730903.bVmlIc/subdir", 0777) = 0
14724:  openat64(AT_FDCWD, "filesystem-test.error_reporting.2190730903.bVmlIc",
O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
14724:  fcntl(3, F_GETFL)                               = 8192
                FOFFMAX
14724:  fstatat64(3, NULL, 0xFFBFE738, 0)               = 0
14724:      d=0x04190013 i=5268679 m=0042755 l=3  u=2110  g=4620  sz=3
14724:          at = Nov 22 14:27:21 MET 2022  [ 1669123641.516468740 ]
14724:          mt = Nov 22 14:27:21 MET 2022  [ 1669123641.516614735 ]
14724:          ct = Nov 22 14:27:21 MET 2022  [ 1669123641.516614735 ]
14724:      bsz=131072 blks=1     fs=zfs
14724:  llseek(3, 0, SEEK_CUR)                          = 0
14724:  fcntl(3, F_SETFD, 0x00000001)                   = 0
14724:  fstatat64(AT_FDCWD,
"filesystem-test.error_reporting.2190730903.bVmlIc/subdir", 0xFFBFE728,
AT_SYMLINK_NOFOLLOW) = 0

I.e. the pathname is somehow corrupted.

Reply via email to