[libcxx-commits] [PATCH] D89948: [libcxx] [test] Ifdef out uses of create_fifo on windows

Martin Storsjö via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Oct 22 03:53:58 PDT 2020


mstorsjo created this revision.
mstorsjo added a reviewer: libc++.
Herald added subscribers: krytarowski, arichardson, emaste.
Herald added a project: libc++.
Herald added 1 blocking reviewer(s): libc++.
mstorsjo requested review of this revision.

There's a few different cases here; this currently works but probably isn't ideal. The different cases involved here are:

- In fs.op.status and fs.op.symlink_status, we already have a list that contains ifdefs for "!defined(__APPLE__) && !defined(__FreeBSD__) && !defined(_WIN32)" around create_socket, the case in directory_entry.obs/file_size.pass.cpp can be considered simlar to that one

- Cases in directory_entry.obs/file_type_obs.pass.cpp and directory_entry.obs/hard_link_count.pass.cpp are uglier as they require two ifdefs, but could be made into just one ifdef, if the intermediate variable was removed and the calls to create_* are done within the table intialization, as in the cases above

- Cases in fs.op.copy_file, fs.op.equivalent and fs.op.is_empty, where a complete TEST_CASE is ifdeffed out. These could potentially be split into separate files instead, that are marked unsupported - is it worth the clutter of adding a handful more files?

- Cases in fs.op.copy, where parts of a testcase are ifdeffed out. These probably could/should be split into a separate testcase, and handled in the same way as we do for fs.op.copy_file and the others above?


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D89948

Files:
  libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_size.pass.cpp
  libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_type_obs.pass.cpp
  libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/hard_link_count.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy/copy.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.equivalent/equivalent.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_empty/is_empty.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.status/status.pass.cpp
  libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.symlink_status/symlink_status.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89948.299917.patch
Type: text/x-patch
Size: 7550 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20201022/06372862/attachment.bin>


More information about the libcxx-commits mailing list