Commit Graph

1978 Commits

Author SHA1 Message Date
de48f75e96 format: fix transcription of zero values to strings
an iteration condition terminated the write when a value was zero rather
than when all numerals were written. instead, iterate over the remaining
numerals.

fixes printf("%zu", 0u)
2016-08-10 17:38:39 +10:00
00eca4445b debug: use less complex specialistion for validator 2016-08-10 17:36:25 +10:00
8f8896b0f6 debug: use appropriate signed literals for CHECK 2016-08-10 17:34:54 +10:00
0b811e636e coord/base: remove front/back methods 2016-08-10 17:33:58 +10:00
6ddff9dfde coord/base: use std::fill for scalar constructor 2016-08-10 17:33:45 +10:00
116ad04a1f build: use ostream/istream over iostream 2016-08-04 17:42:41 +10:00
310c01b9d2 view: instantiate uint8_t ostream operator 2016-08-04 14:15:02 +10:00
d0a797d37e debug: add CHECK_MOD 2016-08-03 18:12:05 +10:00
74284415a7 debug: prefer constref temporaries for CHECK macros 2016-08-03 18:11:29 +10:00
9270a05a8b debug: prefer use of the standard __func__ symbol 2016-08-03 18:11:04 +10:00
c8d8067af2 format: add unsigned char write method
unsigned char sometimes arises from string literals
2016-08-03 18:10:09 +10:00
f9fd156df8 io_posix: add fd constructors to mapped_file 2016-08-02 18:51:04 +10:00
c6f483d077 ascii: add to_integer from ascii to numeric 2016-08-02 18:50:35 +10:00
3a0f20e68b ascii: add is_space 2016-08-02 18:50:26 +10:00
5fee69debb annotation: add likely/unlikely functions 2016-08-02 18:49:42 +10:00
7e0875628b m4/nc: bump for ipa-pta optimsation fixes 2016-08-01 17:24:29 +10:00
7d277bb8ff debug: reduce constexpr tomfoolery where not required
don't use compiler fooling tricks where it's not required
2016-08-01 17:23:53 +10:00
0b85632c97 ripemd: panic rather than throw in constexpr
calculating the hash should never need to throw; all error cases should
be detectable at construction time. we should panic if we detect such an
error.

this fixes a compilation warning
2016-08-01 17:23:30 +10:00
19bf405710 m4/nc: use new NC_SUBPACKAGE argument form 2016-07-31 14:32:09 +10:00
453bd1666d m4: delete unused ax m4 files 2016-07-31 14:32:09 +10:00
c26c687912 format: set ostream precision as if for strings
ostream conversions are converted to strings anyway, so we should treat
them as such earlier in the process.
2016-07-28 16:13:23 +10:00
fad8181842 format: allow undersize integers for conversion 2016-07-28 16:13:23 +10:00
a40e09ed97 format: write c_str as %s by default, support c_str as %p 2016-07-28 14:18:47 +10:00
b4640d64d8 format: use const-ref over rval-ref for value params 2016-07-28 14:18:47 +10:00
b44e6b8cd7 WIP tap param rename 2016-07-28 14:18:47 +10:00
1e31f5daff Merge branch 'master' of ssh://nerdcruft.net/var/git/libgim 2016-07-28 13:47:36 +10:00
fe8bbd1b61 coord: add forward declarations 2016-07-28 13:45:44 +10:00
25a9c6fafc introspection: rename type_string to type_name 2016-07-28 13:45:09 +10:00
ed7c466d8d tap: protect against exceptions in func eval expect 2016-07-28 13:44:17 +10:00
70170f4205 alloc/arena: disallow implicit copy constructor in test obj
fixes a build warning under clang
2016-07-28 13:39:27 +10:00
8cc4c1e82a format: reimplement format rendering
requires literal string arrays, and implements more of the specifier
specification. does not implement 'n' or '$' specifiers. falls back to
snprintf for real arguments.
2016-07-28 13:39:27 +10:00
f9fb0873d3 build: tidy system headers 2016-07-28 13:39:27 +10:00
ef0fb30c8a ascii: add constexpr ascii manipulators 2016-07-28 13:39:27 +10:00
c4daffc001 build: add forgotten includes 2016-07-28 13:39:27 +10:00
f793175fdf json/schema: add 'integer' type support 2016-07-04 15:46:01 +10:00
8694b95cec json/tree: add is_integer query 2016-07-04 15:45:38 +10:00
e1c115c71a murmur2: make mixing constexpr and inline 2016-07-01 17:01:21 +10:00
2bf3e3c431 rand/xorshift: add min/max/discard operations 2016-07-01 16:26:25 +10:00
138cac23fe rand/xorshift: throw on zero seed
zero seeds are a hard runtime error which shouldn't be compiled out in
release mode.
2016-07-01 16:25:48 +10:00
f741986c3f rand/xorshift: simplify result operator specialisations 2016-07-01 16:23:55 +10:00
325a7405b5 rand/lcg: add min/max/discard operations 2016-07-01 16:21:13 +10:00
62482594bd crypto/ice: fix key length assertion 2016-06-30 18:21:21 +10:00
2e700e6444 rand: add mwc64x generator 2016-06-30 18:20:57 +10:00
3b82757e5c test/random: use a constant seed 2016-06-30 15:26:45 +10:00
10e0c4f923 json/except: use a human readable key_error message
the exception string was completely useless without mentioning "you
tried to dereference an invalid key".
2016-06-29 17:55:44 +10:00
6e533e47b7 hash/keccak: remove unused function 2016-06-29 17:55:30 +10:00
74fc943f53 build: quiesce type conversion warnings 2016-06-29 17:55:12 +10:00
0e29675ef5 cast: tighten trunc_cast type restrictions
trunc_cast should be between float/int/uint or to types of lesser
precision. also restrict to fundamental types until we actually test
with arbitrary types.
2016-06-29 17:53:44 +10:00
d51cfe7a34 stream: remove unneeded numeric class
explicitly cast before passing to a stream routine if you need it.
2016-06-29 17:52:26 +10:00
b1bc2a816d json/schema: add path based validate 2016-06-28 16:59:56 +10:00