Commit Graph

404 Commits

Author SHA1 Message Date
Howard Hinnant af6c26b366 Warning suppression in test.
llvm-svn: 131344
2011-05-14 15:38:08 +00:00
Howard Hinnant 3962348edf Warning suppression in test.
llvm-svn: 131343
2011-05-14 15:36:25 +00:00
Howard Hinnant 6c4c6a8047 Warning suppression in test.
llvm-svn: 131341
2011-05-14 14:53:12 +00:00
Howard Hinnant c6b9ff1169 Correction to hexfloat hack.
llvm-svn: 131340
2011-05-14 14:33:56 +00:00
Howard Hinnant e0d67710e9 Fix test bug.
llvm-svn: 131328
2011-05-14 00:07:53 +00:00
Howard Hinnant fe7cffaf57 Suppress some warings in the tests.
llvm-svn: 131327
2011-05-14 00:04:05 +00:00
Howard Hinnant a7fa0710cb Suppress some warings in the tests.
llvm-svn: 131326
2011-05-13 23:59:50 +00:00
Howard Hinnant fb7f07e3bd http://llvm.org/bugs/show_bug.cgi?id=9854. Also created an emulated hexfloat literal for use in some of the tests. <sigh> And cleaned up some harmless but irritating warnings in the tests.
llvm-svn: 131318
2011-05-13 21:52:40 +00:00
Howard Hinnant 467fc38320 A much improved type_traits for C++0x. Not yet done: is_trivially_constructible, is_trivially_assignable and underlying_type.
llvm-svn: 131291
2011-05-13 14:08:16 +00:00
Howard Hinnant f738497500 Corrected some bugs in both memory and the tests. Preparing for being able to turn on support for alias templates.
llvm-svn: 131199
2011-05-11 20:21:19 +00:00
Howard Hinnant a23551cad4 Fix bug in Sseq constraints found by Seth Cantrell
llvm-svn: 129285
2011-04-11 18:22:12 +00:00
Howard Hinnant e4b11156d7 Corrected tests for http://llvm.org/bugs/show_bug.cgi?id=9351
llvm-svn: 128807
2011-04-04 01:42:30 +00:00
Howard Hinnant e4bafbee25 ... And these wonderful tests.
llvm-svn: 128797
2011-04-03 20:06:31 +00:00
Nick Kledzik 4f8ccdf2f8 <rdar://problem/9073695> std::uncaught_exception() becomes true before evaluating the throw-expression rather than after
llvm-svn: 127499
2011-03-11 22:33:07 +00:00
Howard Hinnant 709b108ae1 Corrected const-correctness on nullptr type_traits, and beefed up the test for nullptr_t.
llvm-svn: 127338
2011-03-09 17:17:06 +00:00
Howard Hinnant a8d8ca4d6f http://llvm.org/bugs/show_bug.cgi?id=9326
llvm-svn: 126504
2011-02-25 19:52:41 +00:00
Howard Hinnant bd356a8011 Update testit to default to clang
llvm-svn: 125498
2011-02-14 18:06:10 +00:00
Howard Hinnant 2774545736 Bug 9096 - list::iterator not default constructible
llvm-svn: 124508
2011-01-28 23:46:28 +00:00
Howard Hinnant d44be13fa8 minor corrections to test, and hook is_base_of up to clang intrinsic
llvm-svn: 124502
2011-01-28 20:00:37 +00:00
Howard Hinnant 389eb9b54a placeholder test
llvm-svn: 124193
2011-01-25 16:32:04 +00:00
Douglas Gregor a7b2241407 Eliminate the C++0x-only is_convertible testing function that accepts
a cv-qualifier rvalue reference to the type, e.g.,

  template <class _Tp> char  __test(const volatile typename remove_reference<_Tp>::type&&);

The use of this function signature rather than the more
straightforward one used in C++98/03 mode, e.g.,

  template <class _Tp> char  __test(_Tp);

is broken in two ways:

  1) An rvalue reference cannot bind to lvalues, so is_convertible<X&,
  X&>::value would be false. This breaks two of the unique_ptr tests
  on Clang and GCC >= 4.5. Prior GCC's seem to have allowed rvalue
  references to bind to lvalues, allowing this bug to slip in.

  2) By adding cv-qualifiers to the type we're converting to, we get
  some incorrect "true" results for, e.g., is_convertible<const X&, X&>::value.

llvm-svn: 124166
2011-01-25 01:15:41 +00:00
Chandler Carruth ce395a9acd Teach the Lit configuration to actually use the cxx0x setting when
constructing compile flags, and to link against the 'rt' library on
Linux for clock_gettime and friends.

llvm-svn: 124052
2011-01-23 01:05:20 +00:00
Howard Hinnant 7f64810bc8 LWG 1385 [FCD] tuple_cat should be a single variadic signature (http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#1385). This issue is only in Ready status, meaning it is not official, but probably will be this March in Madrid. It was tentatively accepted in Batavia with the previso that Bill and I didn't have any problems implementing it. This is my part of that agreement.
llvm-svn: 121619
2010-12-11 20:47:50 +00:00
Michael J. Spencer f5799be4a8 Add CMake build and fix major Linux blockers.
llvm-svn: 121510
2010-12-10 19:47:54 +00:00
Howard Hinnant 7f8e26867f Test adjustment for recent changes in allocator_traits
llvm-svn: 121503
2010-12-10 19:22:37 +00:00
Howard Hinnant 088bd9aa14 This got accidentally removed
llvm-svn: 121502
2010-12-10 19:22:00 +00:00
Howard Hinnant 966b5a3157 N3158 Missing preconditions for default-constructed match_result objects
llvm-svn: 121282
2010-12-08 21:07:55 +00:00
Howard Hinnant 3135def61d cleaning up...
llvm-svn: 121275
2010-12-08 20:09:09 +00:00
Howard Hinnant b5452b3db5 After a long break to wait for the atomic spec to settle, this completes the library part of <atomic>. It currently won't even parse as it depends on the existence of the intrinsics specified at http://libcxx.llvm.org/atomic_design_a.html. Everything has been tested using fake intrinsics which have now been removed. As the intrinsics come online, the ATOMIC_* macros will need to be adjusted to reflect which operations are lock-free. These macros will probably need to be #ifdef'd for each supported platform.
llvm-svn: 121267
2010-12-08 17:20:28 +00:00
Michael J. Spencer 5f53fceff0 test: Rename string_op+= to string_op_plus_equal. Windows git doesn't like it.
llvm-svn: 121265
2010-12-08 17:06:47 +00:00
Howard Hinnant 0e1cd17d0a atomics ...
llvm-svn: 121202
2010-12-07 23:20:28 +00:00
Howard Hinnant c772a62096 Work on <atomic> continues. The file size is actually sane now...
llvm-svn: 121181
2010-12-07 20:46:14 +00:00
Howard Hinnant 9847abacb1 Getting <atomic> warmed back up. We have a hopefully more stable spec now. And I believe the intrinsic spec at http://libcxx.llvm.org/atomic_design_a.html is still good.
llvm-svn: 121064
2010-12-06 23:10:08 +00:00
Howard Hinnant 1596c4531b N3189 Observers for the three handler functions
llvm-svn: 120712
2010-12-02 16:45:21 +00:00
Howard Hinnant 92e3718b13 Implemented N3194
llvm-svn: 120458
2010-11-30 20:23:32 +00:00
Howard Hinnant e78881314a Update testsuite strucuture to latest draft
llvm-svn: 120064
2010-11-23 22:13:07 +00:00
Howard Hinnant b32f147bbf Update testsuite strucuture to latest draft
llvm-svn: 120058
2010-11-23 20:55:56 +00:00
Howard Hinnant fedfe3b69c Update testsuite strucuture to latest draft
llvm-svn: 120057
2010-11-23 20:55:36 +00:00
Howard Hinnant ab7be6e43c Update testsuite strucuture to latest draft
llvm-svn: 120054
2010-11-23 20:47:09 +00:00
Howard Hinnant 4030e72457 Update testsuite strucuture to latest draft
llvm-svn: 120045
2010-11-23 20:26:48 +00:00
Howard Hinnant 46cc61ea7c Update testsuite strucuture to latest draft
llvm-svn: 120043
2010-11-23 20:25:10 +00:00
Howard Hinnant e8ce332127 Update testsuite strucuture to latest draft
llvm-svn: 120040
2010-11-23 20:21:36 +00:00
Howard Hinnant 274541968b Update testsuite strucuture to latest draft
llvm-svn: 120036
2010-11-23 19:52:19 +00:00
Howard Hinnant e5cb278766 Update testsuite strucuture to latest draft
llvm-svn: 120029
2010-11-23 19:15:49 +00:00
Howard Hinnant e3120ed1bf N3188 - Revision to N3113: Async Launch Policies (CH 36)
llvm-svn: 120027
2010-11-23 18:33:54 +00:00
Howard Hinnant 3dc6455ff0 N3191: C++ Timeout Specification
llvm-svn: 119909
2010-11-20 19:16:30 +00:00
Howard Hinnant 092980dd65 N3123
llvm-svn: 119906
2010-11-20 18:25:22 +00:00
Howard Hinnant ca74048398 N3142. Many of these traits are just placeholders with medium quality emulation; waiting on compiler intrinsics to do it right.
llvm-svn: 119854
2010-11-19 22:17:28 +00:00
Howard Hinnant d518d1c807 LWG 1522
llvm-svn: 119710
2010-11-18 17:34:48 +00:00
Howard Hinnant 48d05bd26c LWG 1339
llvm-svn: 119699
2010-11-18 16:13:03 +00:00
Howard Hinnant a4a1ef1fc2 LWG 1404
llvm-svn: 119609
2010-11-18 01:40:00 +00:00
Howard Hinnant d09f711dc2 LWG 1325
llvm-svn: 119571
2010-11-17 21:53:14 +00:00
Howard Hinnant 5ba1459c4c LWG 1323
llvm-svn: 119560
2010-11-17 21:11:40 +00:00
Howard Hinnant 601afb30ec LWG 1191
llvm-svn: 119545
2010-11-17 19:52:17 +00:00
Howard Hinnant ef6168357a LWG 1118
llvm-svn: 119541
2010-11-17 19:22:43 +00:00
Howard Hinnant 412dbebe1b license change
llvm-svn: 119395
2010-11-16 22:09:02 +00:00
Howard Hinnant c4931c4746 I have reverted all contributions made by Jesse Towner in revision 110724
llvm-svn: 119383
2010-11-16 21:10:23 +00:00
Howard Hinnant a7c2f3eac3 [atomics.types.address]
llvm-svn: 117033
2010-10-21 17:44:19 +00:00
Howard Hinnant f9c02e15c4 atomic_schar, atomic_uchar, atomic_short, atomic_ushort, atomic_int, atomic_uint, atomic_long, atomic_ulong, atomic_llong, atomic_ullong, atomic_char16_t, atomic_char32_t and atomic_wchar_t.
llvm-svn: 116860
2010-10-19 21:22:10 +00:00
Howard Hinnant d89b01e521 atomic_char
llvm-svn: 116813
2010-10-19 16:51:18 +00:00
Howard Hinnant c1ef47986b Fix two test bugs
llvm-svn: 116515
2010-10-14 21:08:32 +00:00
Howard Hinnant 149f659af3 Relaxing timing test a bit to avoid spurious test failures under load
llvm-svn: 115920
2010-10-07 16:25:31 +00:00
Howard Hinnant 2b672e24a5 Still working on the basic design of <atomic>. I'm working towards a system by which the compiler only needs to define the strongest intrinsics it can. Weaker atomics in the library automatically try stronger and stronger variants, picking the weakest compiler intrinsic available. If no compiler intrinsics are available for a given operation, the library locks a mutex and does the job. Better documentation to follow...
llvm-svn: 115538
2010-10-04 18:52:54 +00:00
Howard Hinnant 748a5279b1 [atomics.flag] completed. Initialization is not working on clang and can't be made to work without defaulted default constructors.
llvm-svn: 115207
2010-09-30 21:05:29 +00:00
Howard Hinnant 88efc1c7a5 Contemplating this <atomic> reorganization...
llvm-svn: 115087
2010-09-29 21:20:03 +00:00
Howard Hinnant 7d489d7a73 Didn't mean to commit that one
llvm-svn: 115058
2010-09-29 18:33:45 +00:00
Howard Hinnant 7387390d6e Wrestling with the slowly dawning realization that <atomic> isn't implementable on any compiler at my disposal...
llvm-svn: 115054
2010-09-29 18:13:54 +00:00
Howard Hinnant eb9e9a3710 fixing whitespace
llvm-svn: 114967
2010-09-28 17:19:10 +00:00
Howard Hinnant cfe0b0a1ab [atomics.order]
llvm-svn: 114966
2010-09-28 17:13:38 +00:00
Howard Hinnant cd39d413b4 Getting started on <atomic>
llvm-svn: 114887
2010-09-27 21:17:38 +00:00
Daniel Dunbar 5f09d9e00a tests/lit: Split options into two groups, so we don't get driver warnings about
unused linker arguments for compile only tests.

llvm-svn: 113935
2010-09-15 04:31:58 +00:00
Daniel Dunbar ecd98d5173 tests: Remove some stray cleanup code.
llvm-svn: 113934
2010-09-15 04:18:37 +00:00
Daniel Dunbar bc9a848e04 tests: Fixup lit config, which got garbled somehow...
llvm-svn: 113931
2010-09-15 04:11:29 +00:00
Daniel Dunbar 42ea463089 tests: Sketch a lit config for running libc++ tests; currently expects libc++ to have been installed.
llvm-svn: 113925
2010-09-15 03:57:04 +00:00
Howard Hinnant 1c1620b269 Updated by-chapter-summary with weekly test results, and fixed up some bad paths in some tests caused by aligning the test suite with N3126.
llvm-svn: 113403
2010-09-08 20:31:42 +00:00
Howard Hinnant 10b9b7b4bd Hooked the following up to clang: is_class, is_enum, has_nothrow_copy_assign, has_trivial_destructor, has_virtual_destructor, is_pod. Implemented has_copy_assign.
llvm-svn: 113373
2010-09-08 17:55:32 +00:00
Howard Hinnant 1be27f0929 has_nothrow_copy_assign hooked up to clang
llvm-svn: 113364
2010-09-08 16:39:18 +00:00
Howard Hinnant 331b3dd2ad has_trivial_copy_assign hooked up to clang (without workarounds). Filed http://llvm.org/bugs/show_bug.cgi?id=8109 to take care of several types which don't work yet. If there is some reason we don't want to handle these types in the compiler, I can handle most of them in the library.
llvm-svn: 113312
2010-09-07 23:38:59 +00:00
Howard Hinnant bfc4026f4c Made a stab at has_copy_constructor. Got it mostly working for g++-4.0, but only works for scalar types on clang. Ultimately this needs a compiler-supported is_constructible which clang is missing, and won't be able to use until it gets variadic templates.
llvm-svn: 113304
2010-09-07 23:11:28 +00:00
Howard Hinnant 06fc97019a has_nothrow_copy_constructor hooked up to clang. Filed http://llvm.org/bugs/show_bug.cgi?id=8107 to take care of several types which don't work yet. If there is some reason we don't want to handle these types in the compiler, I can handle most of them in the library.
llvm-svn: 113294
2010-09-07 22:09:07 +00:00
Howard Hinnant 01fd31000b has_trivial_copy_constructor hooked up to clang. Filed http://llvm.org/bugs/show_bug.cgi?id=8105 to take care of void, arrays of incomplete bounds and complete bounds which don't work yet. If there is some reason we don't want to handle these types in the compiler, I can handle them in the library.
llvm-svn: 113270
2010-09-07 20:31:18 +00:00
Howard Hinnant ba6f71b030 Made a stab at has_default_constructor. Got it mostly working for g++-4.0, but only works for scalar types on clang. Ultimately this needs a compiler-supported is_constructible which clang is missing, and won't be able to use until it gets variadic templates.
llvm-svn: 113225
2010-09-07 17:47:31 +00:00
Howard Hinnant f336abfcd2 has_nothrow_default_constructor hooked up to clang. Filed http://llvm.org/bugs/show_bug.cgi?id=8101 to take care of void, arrays of incomplete types, and classes with virtual destructors which don't work yet. If there is some reasons we don't want to handle these types in the compiler, I can handle them in the library.
llvm-svn: 113217
2010-09-07 17:15:17 +00:00
Howard Hinnant c3ed8c312e has_trivial_default_constructor hooked up to clang. Filed http://llvm.org/bugs/show_bug.cgi?id=8097 to take care of void and arrays of incomplete types which don't work yet. If there is some reasons we don't want to handle these types in the compiler, I can handle them in the library.
llvm-svn: 113205
2010-09-07 15:53:26 +00:00
Howard Hinnant db3e9975d0 Working the type_traits area: Hooked up to clang's __is_union. Got has_trivial_copy_assign working.
llvm-svn: 113162
2010-09-06 19:10:31 +00:00
Howard Hinnant cbf93f3959 sync with N3126
llvm-svn: 113101
2010-09-05 01:14:30 +00:00
Howard Hinnant f9e81f9acb sync with N3126
llvm-svn: 113100
2010-09-05 01:10:45 +00:00
Howard Hinnant 771f325a1f sync with N3126
llvm-svn: 113099
2010-09-05 01:06:34 +00:00
Howard Hinnant 5bed8c6f65 sync with N3126
llvm-svn: 113098
2010-09-05 00:57:20 +00:00
Howard Hinnant e7d99b29be sync with N3126
llvm-svn: 113097
2010-09-05 00:49:04 +00:00
Howard Hinnant 959cf8aede Fix whitespace
llvm-svn: 113089
2010-09-04 23:46:48 +00:00
Howard Hinnant 7609c9b665 Changed __config to react to all of clang's currently documented has_feature flags, and renamed _LIBCPP_MOVE to _LIBCPP_HAS_NO_RVALUE_REFERENCES to be more consistent with the rest of the libc++'s flags, and with clang's nomenclature.
llvm-svn: 113086
2010-09-04 23:28:19 +00:00
Howard Hinnant b77c0c03bb [futures.atomic_future] and notify_all_at_thread_exit. This completes the header <future> and all of Chapter 30 (for C++0x enabled compilers).
llvm-svn: 113017
2010-09-03 21:46:37 +00:00
Howard Hinnant ead85506a7 [futures.shared_future]
llvm-svn: 112990
2010-09-03 18:39:25 +00:00
Howard Hinnant 27f000e10b [futures.task] and [futures.async]. Requires variadics and rvalue-ref support.
llvm-svn: 112500
2010-08-30 18:46:21 +00:00
Howard Hinnant c009b09c2b [futures.unique_future]
llvm-svn: 112423
2010-08-29 14:20:30 +00:00
Howard Hinnant 8759d9d4d0 [futures.promise]. Depends on rvalue-ref support to work 100%.
llvm-svn: 112388
2010-08-28 21:01:06 +00:00
Howard Hinnant dae3481b28 Getting started on <future>
llvm-svn: 112061
2010-08-25 17:32:05 +00:00
Howard Hinnant 01f586ca2c Corrected some int -> char narrowing conversions
llvm-svn: 111849
2010-08-23 21:41:03 +00:00
Howard Hinnant 8c93ff2ce3 Accidentally changed a data file during the whitespace cleanup
llvm-svn: 111845
2010-08-23 21:23:21 +00:00
Howard Hinnant fae824a32d Remove tabs
llvm-svn: 111778
2010-08-22 13:53:14 +00:00
Howard Hinnant 2807d4a58b Fixing whitespace problems
llvm-svn: 111769
2010-08-22 01:04:38 +00:00
Howard Hinnant 94b2dd0998 Fixing whitespace problems
llvm-svn: 111767
2010-08-22 00:59:46 +00:00
Howard Hinnant 2cb7936efe Fixing whitespace problems
llvm-svn: 111765
2010-08-22 00:50:25 +00:00
Howard Hinnant bf2897cf45 Fixing whitespace problems
llvm-svn: 111764
2010-08-22 00:47:54 +00:00
Howard Hinnant f36101dd3d Fixing whitespace problems
llvm-svn: 111763
2010-08-22 00:45:01 +00:00
Howard Hinnant a0eaf608cd Fixing whitespace problems
llvm-svn: 111762
2010-08-22 00:42:21 +00:00
Howard Hinnant 3bad6b61e5 Fixing whitespace problems
llvm-svn: 111761
2010-08-22 00:39:25 +00:00
Howard Hinnant b5a4c50a03 Fixing whitespace problems
llvm-svn: 111760
2010-08-22 00:31:12 +00:00
Howard Hinnant 0022123b95 Fixing whitespace problems
llvm-svn: 111759
2010-08-22 00:29:01 +00:00
Howard Hinnant 66dbf0d311 Fixing whitespace problems
llvm-svn: 111758
2010-08-22 00:26:48 +00:00
Howard Hinnant 62bfbb0974 Fixing whitespace problems
llvm-svn: 111757
2010-08-22 00:22:24 +00:00
Howard Hinnant 5cf4e1f1f0 Fixing whitespace problems
llvm-svn: 111756
2010-08-22 00:20:12 +00:00
Howard Hinnant 8f2f7e7c79 Fixing whitespace problems
llvm-svn: 111755
2010-08-22 00:15:28 +00:00
Howard Hinnant 664ae8118e Fixing whitespace problems
llvm-svn: 111753
2010-08-22 00:08:10 +00:00
Howard Hinnant 9f1102b7fe US 108, N3109
llvm-svn: 111747
2010-08-21 21:14:53 +00:00
Howard Hinnant e8e7af2477 DE 23
llvm-svn: 111746
2010-08-21 21:01:59 +00:00
Howard Hinnant 3db88036f6 US 117
llvm-svn: 111745
2010-08-21 20:58:44 +00:00
Howard Hinnant 4eb27b79c1 US 122, N3106
llvm-svn: 111742
2010-08-21 20:10:01 +00:00
Howard Hinnant 9b0b6d45d2 Installed allocator into std::function
llvm-svn: 111672
2010-08-20 19:36:46 +00:00
Howard Hinnant 907af2668f GB 85, GB 87
llvm-svn: 111546
2010-08-19 19:15:54 +00:00
Howard Hinnant de6d046575 DE 19
llvm-svn: 111544
2010-08-19 19:09:08 +00:00
Howard Hinnant 1102fbbd67 US 98, US 99
llvm-svn: 111542
2010-08-19 18:59:38 +00:00
Howard Hinnant 20cc2a42b8 US 107
llvm-svn: 111538
2010-08-19 18:39:17 +00:00
Howard Hinnant e57dc14c44 LWG 1278
llvm-svn: 111532
2010-08-19 17:40:04 +00:00
Howard Hinnant 5e2f7b89e9 Updated by-chapter chart with weekly test results. Also did some prototyping on result_of, but if-def'd out the prototyped part (which the LWG may or may not accept)
llvm-svn: 111389
2010-08-18 18:52:04 +00:00
Howard Hinnant 86550b0038 [re.alg.replace]. This finishes all of <regex>. That being said, <regex> is exceptionally difficult to thoroughly test. If anyone has the ability to test this, combined with the interest to do so, now would be a good time. :-)
llvm-svn: 111333
2010-08-18 00:13:08 +00:00
Howard Hinnant 14dcd3d1ff [re.tokiter]
llvm-svn: 111278
2010-08-17 20:42:03 +00:00
Howard Hinnant 2bf1fd99b1 [re.regiter]
llvm-svn: 111178
2010-08-16 20:21:16 +00:00
Howard Hinnant 51e3967484 [re.alg.match]
llvm-svn: 111075
2010-08-14 19:58:44 +00:00
Howard Hinnant 48b242a275 Everything under [re.results]
llvm-svn: 111074
2010-08-14 18:14:02 +00:00
Howard Hinnant 5cd6658798 Everything under [re.regex]
llvm-svn: 111024
2010-08-13 18:11:23 +00:00
Howard Hinnant 3d87b69f7d Filling out regex tests...
llvm-svn: 110955
2010-08-12 21:14:20 +00:00
Howard Hinnant 2bcfef5e9c Fix conflict with cstring and using namespace std
llvm-svn: 110736
2010-08-10 21:57:23 +00:00
Howard Hinnant eb2692571f patch by Jesse Towner, and bug fix by Sebastian Redl
llvm-svn: 110724
2010-08-10 20:48:29 +00:00
Howard Hinnant 6e156afa71 Fixed some bugs in the ecma bracket epression regarding escaped characters, and got the awk grammar going.
llvm-svn: 109599
2010-07-28 17:35:27 +00:00
Howard Hinnant c1124300fe lookahead for ecma
llvm-svn: 109548
2010-07-27 22:20:32 +00:00
Howard Hinnant 93da3b2e41 grep and egrep grammars
llvm-svn: 109534
2010-07-27 19:53:10 +00:00
Howard Hinnant 6afe8b0a23 continued regex development...
llvm-svn: 109512
2010-07-27 17:24:17 +00:00
Howard Hinnant 5c67986156 A good start on ecma regex's. Maybe even feature complete, not sure yet. Also an unrelated fix to is_constructible thanks to Daniel Krugler.
llvm-svn: 109479
2010-07-27 01:25:38 +00:00
Howard Hinnant f7109438ea I believe posix extended expr is feature complete. Getting started on ecma exprs.
llvm-svn: 109126
2010-07-22 17:53:24 +00:00
Howard Hinnant b762bea3ba A few more tests for posix extended alternation
llvm-svn: 109107
2010-07-22 14:12:20 +00:00
Howard Hinnant c1198c320f A good start on extended posix regex. Loops working. Alternation working. Also update by-chapter completeness summary.
llvm-svn: 108548
2010-07-16 19:08:36 +00:00
Howard Hinnant 6ded099399 Tests for basic posix regex templated on wchar_t
llvm-svn: 108435
2010-07-15 18:18:07 +00:00
Howard Hinnant 5d695f041c Fixed to work with generalized iterators.
llvm-svn: 108359
2010-07-14 21:14:52 +00:00
Howard Hinnant 5699358c63 Minor optimizations. Minor bug fixes. More tests.
llvm-svn: 108331
2010-07-14 15:45:11 +00:00
Howard Hinnant 8ab959c961 Bracket expressions are working (lightly tested).
llvm-svn: 108280
2010-07-13 21:48:06 +00:00
Howard Hinnant fdec08bd8b regex_constants icase and collate for matching a single char and for matching back references
llvm-svn: 108178
2010-07-12 19:11:27 +00:00
Howard Hinnant aea2afe334 back references for BRE
llvm-svn: 108168
2010-07-12 18:16:05 +00:00
Howard Hinnant 0cbed7e140 Redesign number 3. The previous design was not handling matching of empty strings inside of loops.
llvm-svn: 108151
2010-07-12 15:51:17 +00:00
Howard Hinnant 87ec03a2ea weekly update to by-chapter-summary, plus left and right anchor support in basic posix.
llvm-svn: 107938
2010-07-09 00:15:26 +00:00
Howard Hinnant 8c459a14a9 Marked subexpressions in a loop in basic posix working (only lightly tested so far)
llvm-svn: 107889
2010-07-08 17:43:58 +00:00
Howard Hinnant 189b212662 First loop test passed. The data structure and search algorithm is still crude and in-flux. But this milestone needed to be locked in. Right now every loop is implemented in terms of a structure that will handle the most complicated {min, max} loop. Though only *-loops are tested at the moment. In a future iteration *-loops will likely be optimized a little more. The only tests are for basic posix so far, but I have prototype code running for extended posix and ecma. The prototype code lacks the complicating properties of the real <regex> requirements though.
llvm-svn: 107803
2010-07-07 19:14:52 +00:00
Howard Hinnant 928658cd70 First test for marked subexpressions
llvm-svn: 107317
2010-06-30 20:30:19 +00:00
Howard Hinnant 237ee6fef8 First, very primitive, search results on one engine
llvm-svn: 107294
2010-06-30 17:22:19 +00:00
Howard Hinnant cdefdeee28 two steps forward, one step back...
llvm-svn: 107230
2010-06-30 00:21:42 +00:00
Howard Hinnant e5561b04e4 [re.submatch]
llvm-svn: 107187
2010-06-29 18:37:43 +00:00
Howard Hinnant 853aff80dd regex: learning to crawl
llvm-svn: 106882
2010-06-25 20:56:08 +00:00
Howard Hinnant 24e98486a3 Continuing to work through regex, and updated libcxx_by_chapter.pdf with weekly test results
llvm-svn: 106790
2010-06-24 21:28:00 +00:00
Howard Hinnant 24757ff75e Finished [re.traits]. I'd like to acknowledge the help of Bjorn Reese with <regex>.
llvm-svn: 106478
2010-06-21 21:01:43 +00:00
Howard Hinnant 70505305c1 Just getting our toes wet on <regex>
llvm-svn: 106187
2010-06-17 00:34:59 +00:00
Howard Hinnant d1803b6c87 [util.smartptr.hash]
llvm-svn: 105393
2010-06-03 16:42:57 +00:00
Howard Hinnant cbbf633edb [string.conversions]
llvm-svn: 105336
2010-06-02 18:20:39 +00:00
Howard Hinnant 6508e9936c [conversions.buffer]
llvm-svn: 105286
2010-06-01 20:09:18 +00:00
Howard Hinnant 5d3c11337a [conversions.string]
llvm-svn: 105254
2010-05-31 20:58:54 +00:00
Howard Hinnant 0c17e32edd [locale.stdcvt]
llvm-svn: 105174
2010-05-30 21:39:41 +00:00
Howard Hinnant 9d4a2861bb [support.initlist.range]
llvm-svn: 104975
2010-05-28 17:53:59 +00:00
Howard Hinnant a950f39bac Corrected a test bug in reverse_iterator
llvm-svn: 104960
2010-05-28 16:53:29 +00:00
Howard Hinnant e95bd34de6 UTF-8 data in this file somehow got garbled
llvm-svn: 104952
2010-05-28 16:37:38 +00:00
Howard Hinnant 03ec83e9e8 Implemented some adaptor constructors which I had missed.
llvm-svn: 104946
2010-05-28 15:49:54 +00:00
Howard Hinnant a391bc1323 Corrected rethrow_if_nested
llvm-svn: 104943
2010-05-28 13:35:41 +00:00
Howard Hinnant 019fe4b8fd [except.nested]
llvm-svn: 104850
2010-05-27 17:06:52 +00:00
Howard Hinnant 40c7ef90b2 [numeric.iota]
llvm-svn: 104719
2010-05-26 18:53:44 +00:00
Howard Hinnant f9d540b062 Completed [alg.random.shuffle].
llvm-svn: 104708
2010-05-26 17:49:34 +00:00
Howard Hinnant b4d2fd2f0f [rand.dist.samp.plinear]. This means we've got a fully tested and functional <random>! 489 tests over 48 sections are passing. :-) The only thing still on my plate in this area is to back-port some of this technology to random_shuffle/shuffle in <algorithm>. That will involve shuffling header bits around (<random> depepends on <algorithm>), but it won't entail that much development (compared to what has been required for <random>).
llvm-svn: 104575
2010-05-25 00:27:34 +00:00
Howard Hinnant e302eab415 [rand.dist.samp.pconst] plus some bug fixes in the tests of the other distributions
llvm-svn: 104224
2010-05-20 15:11:46 +00:00
Howard Hinnant fb0e5ec825 [rand.dist.samp.discrete]
llvm-svn: 104103
2010-05-19 01:53:57 +00:00
Howard Hinnant ecbb921cbf [rand.dist.norm.t]
llvm-svn: 104052
2010-05-18 20:08:04 +00:00
Howard Hinnant e31e36f910 [rand.dist.norm.f]
llvm-svn: 104035
2010-05-18 17:32:30 +00:00
Howard Hinnant 34c3b52a2c Better cauchy tests
llvm-svn: 104008
2010-05-18 00:34:49 +00:00
Howard Hinnant 0dd05fb167 more :: to _
llvm-svn: 104006
2010-05-18 00:09:37 +00:00
Howard Hinnant e4c7a35e1c more :: to _
llvm-svn: 104005
2010-05-18 00:06:09 +00:00
Howard Hinnant 6692b261d8 [rand.dist.norm.cauchy]. I'm having trouble testing the output as all statistical properties are undefined. They do not converge upon any one value as the number of samples increases. Suggestions for tests welcome.
llvm-svn: 103983
2010-05-17 21:55:46 +00:00
Howard Hinnant eb6fa6af2b Got rid of more :: path names
llvm-svn: 103970
2010-05-17 20:38:02 +00:00
Howard Hinnant fd5c3a34e3 [rand.dist.norm.lognormal]
llvm-svn: 103957
2010-05-17 18:31:53 +00:00
Howard Hinnant c675d983f6 [rand.dist.pois.extreme]
llvm-svn: 103942
2010-05-17 16:21:56 +00:00
Howard Hinnant 05fa30d595 [rand.dist.bern.geo]
llvm-svn: 103937
2010-05-17 13:44:27 +00:00
Howard Hinnant 89eaea24bc [rand.dist.bern.negbin]
llvm-svn: 103916
2010-05-17 00:09:38 +00:00
Howard Hinnant 45a999719b Beefed up the tests for all of the distributions to include checks against the expected skewness and kurtosis
llvm-svn: 103910
2010-05-16 17:56:20 +00:00
Howard Hinnant 5ce10a6744 Replaced :: with _ in several path names
llvm-svn: 103907
2010-05-16 12:46:02 +00:00
Howard Hinnant 70d0fe5fae Replaced :: with _ in several path names
llvm-svn: 103906
2010-05-16 12:42:38 +00:00
Howard Hinnant b8829825f1 [rand.dist.pois.weibull]
llvm-svn: 103891
2010-05-16 01:09:02 +00:00
Howard Hinnant e3900731f6 [rand.dist.norm.chisq]
llvm-svn: 103888
2010-05-15 23:36:00 +00:00
Howard Hinnant 932ce81fe9 Revisited [rand.dist.bern.bin] and [rand.dist.pois.poisson] with better algorithms
llvm-svn: 103886
2010-05-15 21:36:23 +00:00
Howard Hinnant 0e675818f1 [rand.dist.pois.poisson]
llvm-svn: 103814
2010-05-14 21:38:54 +00:00
Nick Kledzik 749c758632 change test case to verify unexpected() calls terminate - not is terminate
llvm-svn: 103794
2010-05-14 20:17:42 +00:00
Howard Hinnant 7070922ff8 [rand.dist.pois.gamma]
llvm-svn: 103788
2010-05-14 18:43:10 +00:00
Howard Hinnant f8bfb45e9b partial [rand.dist.pois.gamma]
llvm-svn: 103722
2010-05-13 17:58:28 +00:00
Howard Hinnant 6f97c4e7bc [rand.dist.norm.normal]
llvm-svn: 103646
2010-05-12 21:02:31 +00:00
Howard Hinnant bcc4ff0db0 [rand.dist.pois.exp]
llvm-svn: 103621
2010-05-12 17:08:57 +00:00
Howard Hinnant c1cb949c0a tests for [rand.dist.bern.bin]
llvm-svn: 103612
2010-05-12 13:33:11 +00:00
Howard Hinnant deb23ecdf9 [rand.dist.bern.bin]. The evaluation function for this binomial distribution is hopefully just a placeholder. It is using the simplest and slowest method for computing the distribution and needs to be upgraded.
llvm-svn: 103524
2010-05-11 23:26:59 +00:00
Howard Hinnant 5b08a8a432 Wiped out some non-ascii characters that snuck into the copyright.
llvm-svn: 103516
2010-05-11 21:36:01 +00:00
Howard Hinnant 3e519524c1 libcxx initial import
llvm-svn: 103490
2010-05-11 19:42:16 +00:00