Commit Graph

1077 Commits

Author SHA1 Message Date
Howard Hinnant 54b409fdb9 now works with -fno-exceptions and -fno-rtti
llvm-svn: 110828
2010-08-11 17:04:31 +00:00
David Chisnall 37aab7674a #ifdef around Solaris/Linux/Darwin-specific error codes and replace them with their BSD equivalents if they are not available.
llvm-svn: 110827
2010-08-11 16:52:41 +00:00
David Chisnall 2a072dde4b Include sys/endian.h on FreeBSD and use that to detect the byte order.
llvm-svn: 110824
2010-08-11 16:27:20 +00:00
Howard Hinnant 08b0997cc1 Modified the definition of std::foward to address National Body Comment US 90
llvm-svn: 110805
2010-08-11 14:05:55 +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 e7b3e177c4 Let C lib supply stdbool.h
llvm-svn: 109894
2010-07-30 21:28:27 +00:00
Howard Hinnant a8e3da215c Make complex.h play nice with C
llvm-svn: 109791
2010-07-29 18:43:15 +00:00
Howard Hinnant 7189782c6b bug fix concerning search not at beginning of string and word boundaries
llvm-svn: 109750
2010-07-29 15:17:28 +00:00
Howard Hinnant 7949ab0743 fix bug incrementing past end in search
llvm-svn: 109716
2010-07-29 01:15:27 +00:00
Howard Hinnant 4ea5240e05 fix parse bug in ecma non-greedy loop
llvm-svn: 109711
2010-07-29 00:36:00 +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 8ae5097f81 for Ubuntu
llvm-svn: 105338
2010-06-02 18:53:22 +00:00
Howard Hinnant 2234ef3407 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.
llvm-svn: 105337
2010-06-02 18:41:21 +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 bc3c5dc767 Fixed [support.types]. <cstddef> wasn't definining NULL or offsetof.
llvm-svn: 104982
2010-05-28 18:04:31 +00:00
Howard Hinnant 9d4a2861bb [support.initlist.range]
llvm-svn: 104975
2010-05-28 17:53:59 +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 c8edcb3651 weekly test results plus a bug fix clang found
llvm-svn: 104877
2010-05-27 20:06:01 +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 128ba7191d 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.
llvm-svn: 104516
2010-05-24 17:49:41 +00:00
Howard Hinnant 5d6a2e509f Optimized [rand.dist.samp.pconst] and several bug fixes in other distributions
llvm-svn: 104478
2010-05-24 00:35:40 +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 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 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 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 111e0cbe51 add headers and implementation for <new>, <exception>, and <typeinfo>
llvm-svn: 103795
2010-05-14 20:19:37 +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 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