summaryrefslogtreecommitdiffstats
path: root/libcxx/test
Commit message (Collapse)AuthorAgeFilesLines
...
* [WebAssembly] Set std::numeric_limits's traps field for WebAssembly.Dan Gohman2016-01-131-1/+2
| | | | | | | WebAssembly's integer division instruction traps on division by zero; set the traps field of integral std::numeric_limits to true. llvm-svn: 257612
* One more missing std:: qualification from JonathanMarshall Clow2016-01-121-1/+2
| | | | llvm-svn: 257506
* Add a bunch of missing includes in the test suite to make it more portable. ↵Marshall Clow2016-01-1259-116/+175
| | | | | | Fixes bugs #26120 and #26121. Thanks to Jonathan Wakely for the reports and the patches. llvm-svn: 257474
* [libcxx] Set LC_ALL rather than LC_COLLATE to override collation.Ahmed Bougacha2016-01-071-1/+1
| | | | | | | r251131 replaced LANG with LC_COLLATE. But LC_ALL has precedence over both, so the test still fails when LC_ALL=C. llvm-svn: 257018
* Add explicit include directives; the file was getting implicitly included ↵Marshall Clow2016-01-054-0/+4
| | | | | | already. NFC llvm-svn: 256864
* Remove some test scaffolding that I added and then didn't need. No ↵Marshall Clow2016-01-051-29/+0
| | | | | | functional change llvm-svn: 256861
* First half of LWG#2354: 'Unnecessary copying when inserting into maps with ↵Marshall Clow2016-01-055-4/+160
| | | | | | braced-init syntax' llvm-svn: 256859
* [libcxx] Fix typo in darwin target_info.py introduced by r256621.Ahmed Bougacha2016-01-041-1/+1
| | | | llvm-svn: 256772
* Print stacktrace with UBSANEric Fiselier2016-01-041-0/+1
| | | | llvm-svn: 256729
* Fix locale feature testing in test suite.Eric Fiselier2015-12-301-8/+28
| | | | llvm-svn: 256621
* Fix test failure in 32 bit modeEric Fiselier2015-12-291-4/+78
| | | | llvm-svn: 256598
* [libcxx] Fixing the Mac / Darwin buildBen Craig2015-12-291-0/+1
| | | | llvm-svn: 256594
* [libcxx] Fixing silly mistake from last commit.Ben Craig2015-12-291-1/+1
| | | | | | Tested on Linux x86_64 targeting Linux x86_64. llvm-svn: 256592
* [libcxx] Fixing the Linux sanitizer buildsBen Craig2015-12-291-1/+2
| | | | llvm-svn: 256591
* [libcxx] Refactoring target_info.pyBen Craig2015-12-292-182/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes it easier to support running the lit tests for new and unusual platforms. It will break existing users that set LIBCXX_TARGET_INFO to anything other than the default. I think this is fine, because the old LIBCXX_TARGET_INFO wasn't terribly useful. The old way of supporting the different test platforms was to have conditional code scattered throughout config.py. New platforms would need to add conditionals there. Alternatively, the new platform could set no_default_flags to true, and reconstitue almost the entire compile and link line, including things that don't vary across platforms. The new way of supporting new platforms is to create a new target info class, and have make_target_info return an instance of it. For platforms supported in-tree, that will be done by modifying make_target_info. For out-of-tree platforms, users can set LIBCXX_TARGET_INFO at cmake configure time. The target info sub-classes can provide fine-grained information back to config.py. The hooks that will most commonly be provided will be add_cxx_compile_flags and add_cxx_link_flags. These hooks can provide the platform specific flags, while letting config.py handle all the invariant flags. Target info hooks were added for each area that the existing config.py had platform specific behavior. config.py is now mostly free of platform specific conditionals. This patch was tested on Linux x86_64. I both targeted Linux x86_64, and an out-of-tree platform with a custom target_info. In both cases I was able to run libcxx and libcxxabi tests. I do not have access to FreeBSD, Darwin, or Windows machines that are set up for lit testing. llvm-svn: 256588
* [libcxx] Fix LWG Issue #2367 - Fixing std::tuple and std::pair's default ↵Eric Fiselier2015-12-232-6/+175
| | | | | | | | | | | | | | constructors. Summary: This patch implements the solution for LWG Issue #2367. See http://cplusplus.github.io/LWG/lwg-active.html#2367 Reviewers: mclow.lists, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D13750 llvm-svn: 256325
* Fix type in tuple test. Sorry for the noiseEric Fiselier2015-12-181-2/+2
| | | | llvm-svn: 255944
* [libcxx] LWG2485: get() should be overloaded for const tuple&&. Patch from ↵Eric Fiselier2015-12-186-11/+315
| | | | | | | K-Ballo. Review: http://reviews.llvm.org/D14839 llvm-svn: 255941
* Fix various GCC mis-configurations for newer versions.Eric Fiselier2015-12-152-8/+7
| | | | | | | | | | | | This patch goes through and enables C++11 and C++14 features for newer GCC's. The main changes are: 1. Turn on variable templates. (Uses __cpp_variable_templates) 2. Assert atomic<Tp> is trivially copyable (Uses _GNUC_VER >= 501). 3. Turn on trailing return support for GCC. (Uses _GNUC_VER >= 404) 4. XFAIL void_t test for GCC 5.1 and 5.2. Fixed in GCC 6. llvm-svn: 255585
* Update how libc++/libc++abi link the tests. Follow up on r255559.Eric Fiselier2015-12-141-3/+4
| | | | llvm-svn: 255560
* K-Ballo pointed out a mistake in the add_lvalue_ref tests I checked in; now ↵Marshall Clow2015-12-141-7/+7
| | | | | | more of them are passing. Thanks llvm-svn: 255519
* Fix a corner case that involved calling rethrow_if_nested with a type that ↵Marshall Clow2015-12-141-1/+9
| | | | | | had a deleted operator&. Added a test to catch this as well. Thanks to Ville for the heads-up. llvm-svn: 255517
* Add add_lvalue_ref tests for a few function types, with a note why not moreMarshall Clow2015-12-141-0/+36
| | | | llvm-svn: 255513
* Use __make_integer_seq builtin for std::make_integer_sequence. Patch by K-ballo.Eric Fiselier2015-12-095-11/+55
| | | | llvm-svn: 255162
* Last bit of P0006; mark it as completeMarshall Clow2015-11-301-0/+4
| | | | llvm-svn: 254290
* Fix bugs in alignment_of_v, etc. Re-enable the newly added testsMarshall Clow2015-11-303-16/+16
| | | | llvm-svn: 254289
* Temporarily disable new tests while I figure out what's going onMarshall Clow2015-11-303-19/+19
| | | | llvm-svn: 254288
* Fix bad macrosMarshall Clow2015-11-301-1/+1
| | | | llvm-svn: 254287
* Implement more of P0006; Type Traits Variable Templates. <ratio>Marshall Clow2015-11-306-54/+120
| | | | llvm-svn: 254285
* Fix bad macros in testsMarshall Clow2015-11-303-5/+5
| | | | llvm-svn: 254284
* Implement more of P0006; Type Traits Variable Templates.Marshall Clow2015-11-306-2/+68
| | | | llvm-svn: 254283
* Add static_assert to set/multiset/map/multimap/forward_list/deque that the ↵Marshall Clow2015-11-2613-0/+234
| | | | | | allocator's value_type match the container's value_type. vector/unordered/list/string already do this. Add tests for all the containers to verify this. llvm-svn: 254119
* Silence a -Wmissing-braces warning in the tests; mbstate_t is defined ↵Marshall Clow2015-11-251-0/+8
| | | | | | differently on different C libraries. llvm-svn: 254050
* Remove undefined behavior from tests; specifically, ensure that the value ↵Marshall Clow2015-11-2414-49/+59
| | | | | | type of the allocators match the value type of the containers llvm-svn: 254030
* Fix bad variable name. project_root -> project_obj_rootEric Fiselier2015-11-171-1/+1
| | | | llvm-svn: 253382
* Add tests for the extended integer types - as required by LWG#2119Marshall Clow2015-11-171-0/+40
| | | | llvm-svn: 253376
* Implement P0007: Constant View: A proposal for a std::as_const helper ↵Marshall Clow2015-11-172-0/+68
| | | | | | function template. llvm-svn: 253274
* Fix compile error in test. Can't use `operator[]` for multimap.Marshall Clow2015-11-161-1/+1
| | | | llvm-svn: 253271
* More tests for LWG#2156Marshall Clow2015-11-164-0/+64
| | | | llvm-svn: 253257
* LWG#2156 loosened the requirements on unordered containers 'rehash' calls. ↵Marshall Clow2015-11-164-0/+48
| | | | | | Add tests to make sure we meet these requirements. Since we met the stricter ones, no code change needed to meet the looser ones. llvm-svn: 253223
* Implement P0013R1: Logical Operator Type Traits. Make a hidden ↵Marshall Clow2015-11-163-0/+171
| | | | | | implementation (__and_, __or_, and __not_) so that we can use them elsewhere in non-C++17 code - for example, in the LFTS llvm-svn: 253215
* Implement P0074: Making owner_less more flexibleMarshall Clow2015-11-121-0/+40
| | | | llvm-svn: 252905
* [libcxx] Fixup a few fumbles in the initial no-exceptions XFAILs list.Asiri Rathnayake2015-11-125-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The initial buildbot run found a few missing bits in the initial XFAIL list for the no-exceptions libc++ variant. These discrepancies are as follows: [1] Following two tests need XFAILs on the no-exceptions library variant. My local runs had these two disabled for other reasons (unsupported): - localization/locales/locale/locale.cons/char_pointer.pass.cpp - numerics/complex.number/complex.ops/complex_divide_complex.pass.cpp [2] These three does not need XFAILs, they were failing on my local runs for other reasons: - depr/depr.c.headers/uchar_h.pass.cpp - input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp - .../category.collate/locale.collate.byname/transform.pass.cpp (these are failing on my box for the default build as well) The current patch fixes both the cases above. Additionally, I've run the following scan to make sure I've covered all the cases: > grep ' catch \| try \| throw ' -R . | perl -pe 's|(.*?):.*|\1|' | sort | \ uniq > 1.txt > grep 'libcpp-no-exceptions' -R . | perl -pe 's|(.*?):.*|\1|' | sort | \ uniq > 2.txt > diff 1.txt 2.txt This showed up a few extra interesting cases: [3] These two tests do not use try/catch/throw statements, but they fail at runtime. Need to be investigated, I've left the XFAILs in. - std/thread/futures/futures.shared_future/dtor.pass.cpp - std/thread/futures/futures.unique_future/dtor.pass.cpp [4] These tests use a macro named TEST_HAS_NO_EXCEPTIONS to conditionally exclude try/catch/throw statements when running without exceptions. I'm not entirely sure why this was needed (AFAIK, we didn't have a no-exceptions library build before). The macro's defintion is quite similar to that of _LIBCPP_NO_EXCEPTIONS. I will investigate if this can be reused for my test fixes or if it should be replaced with _LIBCPP_NO_EXCEPTIONS. - std/experimental/any/* Change-Id: I9ad1e0edd78f305406eaa0ab148b1ab693f7e26a llvm-svn: 252870
* Fix typo I just introduced.Marshall Clow2015-11-101-1/+1
| | | | llvm-svn: 252614
* std:: qualify ptrdiff_t in the test. Thanks to Walter for the catchMarshall Clow2015-11-101-2/+2
| | | | llvm-svn: 252613
* Walter pointed out some missing includes in the tests. Fixing the includes ↵Marshall Clow2015-11-1059-31/+85
| | | | | | uncovered a couple bugs in the _v type traits. Fixed those, too llvm-svn: 252612
* Explicitly #include <utility> so that we get std::move. Thanks to Walter for ↵Marshall Clow2015-11-101-0/+1
| | | | | | the bug report. llvm-svn: 252610
* Make it possible to build a no-exceptions variant of libcxx.Asiri Rathnayake2015-11-10157-0/+157
| | | | | | | | | | | | Fixes a small omission in libcxx that prevents libcxx being built when -DLIBCXX_ENABLE_EXCEPTIONS=0 is specified. This patch adds XFAILS to all those tests that are currently failing on the new -fno-exceptions library variant. Follow-up patches will update the tests (progressively) to cope with the new library variant. Change-Id: I4b801bd8d8e4fe7193df9e55f39f1f393a8ba81a llvm-svn: 252598
* Make check-libcxx Py3-compatible.NAKAMURA Takumi2015-11-091-3/+3
| | | | llvm-svn: 252458
* Implement LWG#2353: std::next is over-constrainedMarshall Clow2015-11-071-0/+4
| | | | llvm-svn: 252407
OpenPOWER on IntegriCloud