Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libc++] Feature-test macros should reflect configurations like _LIBCPP_HAS_NO_FILESYSTEM #68250

Closed
ldionne opened this issue Oct 4, 2023 · 1 comment
Assignees
Labels
libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.

Comments

@ldionne
Copy link
Member

ldionne commented Oct 4, 2023

Currently, FTMs like __cpp_lib_filesystem take into account availability markup like _LIBCPP_AVAILABILITY_HAS_NO_FILESYSTEM_LIBRARY. In other words, if the deployment target doesn't support <filesystem> the FTM will reflect that. That's good.

However, FTMs don't reflect carve-outs like _LIBCPP_HAS_NO_FILESYSTEM. In fact, generated tests like libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp are disabled with // UNSUPPORTED: no-filesystem, which means that we basically don't test the presence or absence of these FTMs in the case of carved-out configurations.

Instead, FTMs should reflect that the library has been configured without support for X or Y.

@ldionne ldionne added the libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. label Oct 4, 2023
@ldionne ldionne self-assigned this Oct 4, 2023
@ldionne
Copy link
Member Author

ldionne commented Mar 4, 2024

I think this was fixed by #80168.

@ldionne ldionne closed this as completed Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

No branches or pull requests

1 participant