Commit Graph

234 Commits

Author SHA1 Message Date
Howard Hinnant
4a23e1e060 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)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111389 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-18 18:52:04 +00:00
Howard Hinnant
a8d7759708 [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. :-)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111333 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-18 00:13:08 +00:00
Howard Hinnant
262b779f1d [re.tokiter]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111278 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17 20:42:03 +00:00
Howard Hinnant
a712c72499 [re.regiter]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111178 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16 20:21:16 +00:00
Howard Hinnant
27405f91a8 Everything under [re.results]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111074 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-14 18:14:02 +00:00
Howard Hinnant
7026a17a48 Everything under [re.regex]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111024 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-13 18:11:23 +00:00
Howard Hinnant
878465043f Filling out regex tests...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110955 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-12 21:14:20 +00:00
Howard Hinnant
d444470d6c now works with -fno-exceptions and -fno-rtti
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110828 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 17:04:31 +00:00
David Chisnall
81e68580b2 #ifdef around Solaris/Linux/Darwin-specific error codes and replace them with their BSD equivalents if they are not available.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110827 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 16:52:41 +00:00
David Chisnall
3e13d4f9c4 Include sys/endian.h on FreeBSD and use that to detect the byte order.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110824 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 16:27:20 +00:00
Howard Hinnant
b271eff4c6 Modified the definition of std::foward to address National Body Comment US 90
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110805 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 14:05:55 +00:00
Howard Hinnant
0a68a4d739 Fix conflict with cstring and using namespace std
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110736 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 21:57:23 +00:00
Howard Hinnant
60a0a8ef24 patch by Jesse Towner, and bug fix by Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110724 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 20:48:29 +00:00
Howard Hinnant
3da2d48b03 Let C lib supply stdbool.h
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109894 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-30 21:28:27 +00:00
Howard Hinnant
d78b315935 Make complex.h play nice with C
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109791 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-29 18:43:15 +00:00
Howard Hinnant
f3dcca049b bug fix concerning search not at beginning of string and word boundaries
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109750 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-29 15:17:28 +00:00
Howard Hinnant
8daa733576 fix bug incrementing past end in search
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109716 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-29 01:15:27 +00:00
Howard Hinnant
a0d045b787 fix parse bug in ecma non-greedy loop
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109711 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-29 00:36:00 +00:00
Howard Hinnant
15476f345d Fixed some bugs in the ecma bracket epression regarding escaped characters, and got the awk grammar going.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109599 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-28 17:35:27 +00:00
Howard Hinnant
e9de5ff443 lookahead for ecma
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109548 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-27 22:20:32 +00:00
Howard Hinnant
856846b66f grep and egrep grammars
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109534 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-27 19:53:10 +00:00
Howard Hinnant
ad2a7ab9a9 continued regex development...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109512 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-27 17:24:17 +00:00
Howard Hinnant
17615b040d 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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109479 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-27 01:25:38 +00:00
Howard Hinnant
2ade7c27f8 I believe posix extended expr is feature complete. Getting started on ecma exprs.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109126 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 17:53:24 +00:00
Howard Hinnant
1371b2e56e A few more tests for posix extended alternation
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@109107 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 14:12:20 +00:00
Howard Hinnant
aa69808da9 A good start on extended posix regex. Loops working. Alternation working. Also update by-chapter completeness summary.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108548 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-16 19:08:36 +00:00
Howard Hinnant
639a668b4c Tests for basic posix regex templated on wchar_t
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108435 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-15 18:18:07 +00:00
Howard Hinnant
22ce0b4a1c Fixed to work with generalized iterators.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108359 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-14 21:14:52 +00:00
Howard Hinnant
68025ed084 Minor optimizations. Minor bug fixes. More tests.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108331 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-14 15:45:11 +00:00
Howard Hinnant
173968a5f2 Bracket expressions are working (lightly tested).
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108280 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-13 21:48:06 +00:00
Howard Hinnant
e34f17d383 regex_constants icase and collate for matching a single char and for matching back references
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108178 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-12 19:11:27 +00:00
Howard Hinnant
cba352d348 back references for BRE
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108168 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-12 18:16:05 +00:00
Howard Hinnant
ac30386dfe Redesign number 3. The previous design was not handling matching of empty strings inside of loops.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@108151 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-12 15:51:17 +00:00
Howard Hinnant
37f9f9c587 weekly update to by-chapter-summary, plus left and right anchor support in basic posix.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107938 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-09 00:15:26 +00:00
Howard Hinnant
e77aa5e7f4 Marked subexpressions in a loop in basic posix working (only lightly tested so far)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107889 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-08 17:43:58 +00:00
Howard Hinnant
f8ce459f8d 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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107803 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-07 19:14:52 +00:00
Howard Hinnant
0dca5fc7ad First test for marked subexpressions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107317 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30 20:30:19 +00:00
Howard Hinnant
9b80f2b044 First, very primitive, search results on one engine
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107294 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30 17:22:19 +00:00
Howard Hinnant
7e9d84b746 two steps forward, one step back...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107230 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30 00:21:42 +00:00
Howard Hinnant
cd85b9ee13 [re.submatch]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@107187 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-29 18:37:43 +00:00
Howard Hinnant
0de86b6338 regex: learning to crawl
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@106882 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-25 20:56:08 +00:00
Howard Hinnant
8c2c18d57c Continuing to work through regex, and updated libcxx_by_chapter.pdf with weekly test results
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@106790 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-24 21:28:00 +00:00
Howard Hinnant
f409d2f2fc Finished [re.traits]. I'd like to acknowledge the help of Bjorn Reese with <regex>.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@106478 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21 21:01:43 +00:00
Howard Hinnant
3257c9853f Just getting our toes wet on <regex>
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@106187 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-17 00:34:59 +00:00
Howard Hinnant
21aefc3a61 [util.smartptr.hash]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105393 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-03 16:42:57 +00:00
Howard Hinnant
ed30e070ac for Ubuntu
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105338 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-02 18:53:22 +00:00
Howard Hinnant
b6184db9c5 I've reverted the changes needed for Ubuntu. The changes for Ubuntu should go under a #if and I'm not sure what that #if should look like.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105337 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-02 18:41:21 +00:00
Howard Hinnant
a6a062df66 [string.conversions]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105336 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-02 18:20:39 +00:00
Howard Hinnant
4b53f508ef [conversions.buffer]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105286 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-01 20:09:18 +00:00
Howard Hinnant
d23b464e21 [conversions.string]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105254 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-31 20:58:54 +00:00
Howard Hinnant
87d1a8a4d8 [locale.stdcvt]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@105174 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-30 21:39:41 +00:00
Howard Hinnant
e056924cd2 Fixed [support.types]. <cstddef> wasn't definining NULL or offsetof.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104982 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28 18:04:31 +00:00
Howard Hinnant
fcc593875c [support.initlist.range]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104975 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28 17:53:59 +00:00
Howard Hinnant
3ec31849df Implemented some adaptor constructors which I had missed.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104946 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28 15:49:54 +00:00
Howard Hinnant
6bb9f58bc8 Corrected rethrow_if_nested
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104943 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28 13:35:41 +00:00
Howard Hinnant
13c98cc20d weekly test results plus a bug fix clang found
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104877 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-27 20:06:01 +00:00
Howard Hinnant
ed2c2916b2 [except.nested]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104850 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-27 17:06:52 +00:00
Howard Hinnant
ebef7459b2 [numeric.iota]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104719 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-26 18:53:44 +00:00
Howard Hinnant
c326721e65 Completed [alg.random.shuffle].
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104708 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-26 17:49:34 +00:00
Howard Hinnant
5430540d57 [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>).
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104575 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-25 00:27:34 +00:00
Howard Hinnant
adff4895b2 patch by Jeffrey Yasskin for porting to Ubuntu Hardy. Everything was accepted except there were some bug fixes needed in <locale> for the __nolocale_* series. For the apple branch I ended up using templates instead of the var_args solution because it seemed both safer and more efficient.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104516 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-24 17:49:41 +00:00
Howard Hinnant
2a59254a44 Optimized [rand.dist.samp.pconst] and several bug fixes in other distributions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104478 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-24 00:35:40 +00:00
Howard Hinnant
d6d1171f2c [rand.dist.samp.pconst] plus some bug fixes in the tests of the other distributions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104224 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20 15:11:46 +00:00
Howard Hinnant
551d8e4ddb [rand.dist.samp.discrete]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104103 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-19 01:53:57 +00:00
Howard Hinnant
321b4bb7ae [rand.dist.norm.t]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104052 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-18 20:08:04 +00:00
Howard Hinnant
d8bc09b616 [rand.dist.norm.f]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104035 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-18 17:32:30 +00:00
Howard Hinnant
d7d0113295 [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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103983 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 21:55:46 +00:00
Howard Hinnant
2bc36fcff3 [rand.dist.norm.lognormal]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103957 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 18:31:53 +00:00
Howard Hinnant
c2b0dc7e33 [rand.dist.pois.extreme]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103942 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 16:21:56 +00:00
Howard Hinnant
34e8a57b76 [rand.dist.bern.geo]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103937 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 13:44:27 +00:00
Howard Hinnant
f2fe5d5a61 [rand.dist.bern.negbin]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103916 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 00:09:38 +00:00
Howard Hinnant
df40dc6c1a Beefed up the tests for all of the distributions to include checks against the expected skewness and kurtosis
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103910 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-16 17:56:20 +00:00
Howard Hinnant
9de6e30761 [rand.dist.pois.weibull]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103891 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-16 01:09:02 +00:00
Howard Hinnant
97dc2f35c3 [rand.dist.norm.chisq]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103888 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-15 23:36:00 +00:00
Howard Hinnant
6add8ddfef Revisited [rand.dist.bern.bin] and [rand.dist.pois.poisson] with better algorithms
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103886 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-15 21:36:23 +00:00
Howard Hinnant
4ff556cf62 [rand.dist.pois.poisson]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103814 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14 21:38:54 +00:00
Nick Kledzik
804b6e73d4 add headers and implementation for <new>, <exception>, and <typeinfo>
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103795 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14 20:19:37 +00:00
Howard Hinnant
f417abe683 [rand.dist.pois.gamma]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103788 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14 18:43:10 +00:00
Howard Hinnant
c7c4913b46 partial [rand.dist.pois.gamma]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103722 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-13 17:58:28 +00:00
Howard Hinnant
a64111c95a [rand.dist.norm.normal]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103646 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12 21:02:31 +00:00
Howard Hinnant
30a840f5f0 [rand.dist.pois.exp]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103621 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12 17:08:57 +00:00
Howard Hinnant
03aad81afd [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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103524 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-11 23:26:59 +00:00
Howard Hinnant
f5256e16df Wiped out some non-ascii characters that snuck into the copyright.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103516 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-11 21:36:01 +00:00
Howard Hinnant
bc8d3f97eb libcxx initial import
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103490 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-11 19:42:16 +00:00