Commit Graph

1864 Commits

Author SHA1 Message Date
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
73c30561af json/tree: reinstate path based parsers
json::tree::node is a fat object, so it's safe to load the source data
from within the parsing function
2016-06-28 16:57:44 +10:00
d7204d7cac json: remove path based parsers
parsers don't store copies of the data, so we can't allow functions that
allocate data themselves.
2016-06-28 15:59:53 +10:00
bf5cab6156 io: move view conversion operator to named function 2016-06-28 15:58:41 +10:00
fef1dc8300 alloc/dynamic: add missing override specifiers 2016-06-28 15:57:23 +10:00
0b128384eb io: add lval ref-qualifiers to mapped_file members 2016-06-28 14:23:42 +10:00
642317f6a4 json: use templated iterator for parsing from views 2016-06-28 14:16:28 +10:00
194cd6c574 io: add view operator to mapped_file 2016-06-28 14:15:19 +10:00
8c5c98f5cc io: add const begin/end to mapped_file 2016-06-28 14:14:23 +10:00
94dc6274dc io_win32: commenting style 2016-06-28 14:12:44 +10:00
ba2c74449f view: make container constructor explicit and constexpr 2016-06-28 14:09:48 +10:00
722dbbe18f view: use decltype for make_view type deduction
some types will not have iterator typedefs but are capable of providing
iterators. use the types that std::begin and friends return instead of
deducing them ourselves.
2016-06-28 14:06:02 +10:00
1717458c7a io_posix: public/private order style 2016-06-28 12:21:30 +10:00
51cd9749e9 io_posix: indentation style 2016-06-28 12:21:12 +10:00
d8918d6f2c log: display error if LOG_LEVEL is invalid 2016-06-24 16:56:44 +10:00