summaryrefslogtreecommitdiff
path: root/libcxxabi/test/catch_function_03.pass.cpp
AgeCommit message (Collapse)Author
2024-06-28[libc++] Clean up and update deployment target features (#96312)Louis Dionne
This patch removes many annotations that are not relevant anymore since we don't support or test back-deploying to macOS < 10.13. It also cleans up raw usage of target triples to identify versions of dylibs shipped on prior versions of macOS, and uses the target-agnostic Lit features instead. Finally, it reorders both the Lit backdeployment features and the corresponding availability macros in the library in a way that makes more sense, and reformulates the Lit backdeployment features in terms of when a version of LLVM was introduced instead of encoding the system versions on which it hasn't been introduced yet. Although one can be derived from the other, encoding the negative form is extremely error-prone. Fixes #80901
2024-06-21[libc++] Fix deployment target Lit features (#94791)Louis Dionne
We were not making any distinction between e.g. the "Apple-flavored" libc++ built from trunk and the system-provided standard library on Apple platforms. For example, any test that would be XFAILed on a back-deployment target would unexpectedly pass when run on that deployment target against the tip of trunk Apple-flavored libc++. In reality, that test would be expected to pass because we're running against the latest libc++, even if it is Apple-flavored. To solve this issue, we introduce a new feature that describes whether the Standard Library in use is the one provided by the system by default, and that notion is different from the underlying standard library flavor. We also refactor the existing Lit features to make a distinction between availability markup and the library we're running against at runtime, which otherwise limit the flexibility of what we can express in the test suite. Finally, we refactor some of the back-deployment versions that were incorrect (such as thinking that LLVM 10 was introduced in macOS 11, when in reality macOS 11 was synced with LLVM 11). Fixes #82107
2023-03-30[libc++] Use the stdlib=<LIB> Lit feature instead of use_system_cxx_libLouis Dionne
The use_system_cxx_lib Lit feature was only used for back-deployment testing. However, one immense hole in that setup was that we didn't have a proper way to test Apple's own libc++ outside of back-deployment, which was embodied by the fact that we needed to define _LIBCPP_DISABLE_AVAILABILITY when testing (see change in libcxx/utils/libcxx/test/params.py). This led to the apple-system testing configuration not checking for availability markup, which is obviously quite bad since the library we ship actually has availability markup. Using stdlib=<VENDOR>-libc++ instead to encode back-deployment restrictions on tests is simpler and it makes it possible to naturally support tests such as availability markup checking even in the tip-of-trunk Apple-libc++ configuration. Differential Revision: https://reviews.llvm.org/D146366
2022-12-21[libcxxabi] Use 'target=' consistentlyPaul Robinson
2021-11-20[libc++] [test] Eliminate libcpp-no-noexcept-function-type and ↵Arthur O'Dwyer
libcpp-no-structured-bindings. At this point, every supported compiler that claims a -std=c++17 mode should also support these features. Differential Revision: https://reviews.llvm.org/D113436
2021-11-17[runtimes][NFC] Remove filenames at the top of the license noticeLouis Dionne
We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around.
2021-07-15[libc++/abi] Fix broken Lit feature no-noexcept-function-typeLouis Dionne
The feature was always defined, which means that the two test cases guarded by it were never run. Differential Revision: https://reviews.llvm.org/D106062
2020-10-08[runtimes] Use int main(int, char**) consistently in testsLouis Dionne
This is needed when running the tests in Freestanding mode, where main() isn't treated specially. In Freestanding, main() doesn't get mangled as extern "C", so whatever runtime we're using fails to find the entry point. One way to solve this problem is to define a symbol alias from __Z4mainiPPc to _main, however this requires all definitions of main() to have the same mangling. Hence this commit.
2020-04-22[libc++/abi/unwind] Rename Lit features for no exceptions to 'no-exceptions'Louis Dionne
Instead of having different names for the same Lit feature accross code bases, use the same name everywhere. This NFC commit is in preparation for a refactor where all three projects will be using the same Lit feature detection logic, and hence it won't be convenient to use different names for the feature. Differential Revision: https://reviews.llvm.org/D78370
2019-01-19Update more file headers across all of the LLVM projects in the monorepoChandler Carruth
to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648
2016-12-02Check for SD-6 feature test macro when determining which tests should beRichard Smith
available, rather than #ifdef'ing away the relevant tests if it's unavailable. llvm-svn: 288543
2016-12-02Fix up r288457 for compilers that don't support noexcept function types:Richard Smith
disable the test entirely for those cases. This is a quick patch, I'll look at a proper feature flag next. llvm-svn: 288539
2016-12-02Update implementation of ABI support for throwing noexcept function pointersRichard Smith
and catching as non-noexcept to match the final design per discusson on cxx-abi-dev. llvm-svn: 288457
2016-11-02[p0012] Implement ABI support for throwing a noexcept function pointer andRichard Smith
catching as non-noexcept This implements the following proposal from cxx-abi-dev: http://sourcerytools.com/pipermail/cxx-abi-dev/2016-October/002988.html ... which is necessary for complete support of http://wg21.link/p0012, specifically throwing noexcept function and member function pointers and catching them as non-noexcept pointers. Differential Review: https://reviews.llvm.org/D26178 llvm-svn: 285867