Commit Graph

1791 Commits

Author SHA1 Message Date
8142944139 json: store numbers natively as uint/sint/real
allows more accurate representations and better error checking.
2016-05-12 17:41:31 +10:00
1f432c13b7 build: avoid type truncation warnings
discovered with clang's -Wshorten-64-to-32
2016-05-12 17:39:33 +10:00
e71bd9f621 maths: move is_integer into headers to avoid param explosion 2016-05-12 17:34:47 +10:00
60286202fd maths: make stirling inline rather than constexpr
stirling uses cmath functions which aren't constexpr, such as std::pow.
this sometimes works under linux/gcc but fails under clang/freebsd
2016-05-12 17:32:41 +10:00
e17158b0bb build: add forgotten cxx headers
discovered testing clang 3.8 under freebsd
2016-05-12 17:31:33 +10:00
452c5511a4 tap: make test function parameter const 2016-05-12 17:28:33 +10:00
d4b951b4db m4: bump autocruft 2016-05-12 17:27:45 +10:00
1a17f27b37 m4: add missing AX_ macros 2016-05-09 14:06:03 +10:00
50f61eb682 m4/nc_cxx: use newer AC_MSG_ERROR 2016-05-09 14:04:58 +10:00
27800de3a0 format: avoid cast warnings for exception constructor 2016-04-28 16:09:14 +10:00
efa52c60e9 build: remove unnecessary pedantic checks 2016-04-28 16:09:14 +10:00
3e46f18e5a coord/base: style 2016-04-28 16:06:48 +10:00
6b6c50611c m4/nc_cxx: remove tests for require c++11 features
If your compiler doesn't support these we're not going to fake it. Fix
your damn compiler.
2016-04-28 16:06:00 +10:00
be79ade619 m4: remove -pedantic from build flags
It's more trouble than it's worth given we rely on extensions like
unions of anonymous structs.
2016-04-28 16:05:17 +10:00
67a5184a9d build: add missing includes
detected under libstdc++ from gcc-6.0
2016-04-28 15:02:16 +10:00
20b809334e build: add forgotten build scripts for dist 2016-04-27 17:24:00 +10:00
71976520b3 build: add forgotten inline header time.ipp 2016-04-27 17:23:45 +10:00
e70f582784 build: fix the test runner for win32 targets 2016-04-27 17:16:13 +10:00
b814c83e21 test/json: run tests through a line wine/crlf wrapper
unit tests rely on AWKs record seperator being LF which presents issues
when running windows tests. rather than modify the tap-driver provided
by autotools (which would be extremely annoying to maintain) we run all
tests through wine-crlf.sh which will perform line ending transforms as
required.

it's a pretty braindead script, so don't do anything terrifically
extreme under it.
2016-04-27 17:13:36 +10:00
456362adff t/json-validate: catch only json exceptions
the json namespace should really only be throwing json errors. this tool
is primarily used for unit testing, so it's better it crashes
catastrophically on an unhandled exception.
2016-04-27 17:10:36 +10:00
2fbf9af8cb t/json-schema: reduce scope of schema and input 2016-04-27 17:09:48 +10:00
c810056a70 m4/debugging: add stabs debug symbols
win32 seems to have some level of stabs capabilities
2016-04-27 17:07:55 +10:00
5b58e0afa6 json/flat: don't try to parse empty files
avoids debug assertions fetching data pointer on empty mappings
2016-04-27 17:07:20 +10:00
25913ac885 io: bump copyright year 2016-04-27 17:06:25 +10:00
de6ea736a1 io_posix: add mapped_file::empty implementation 2016-04-27 17:06:09 +10:00
d0e0ee3981 io_win32: add mapped_file::empty implementation 2016-04-27 17:05:46 +10:00
57058ab20f io_win32: make mapping checks more robust
fixes zero length mapping errors
2016-04-27 17:04:56 +10:00
ddfb765110 io: ignore failed zero length posixed mapped_files 2016-04-27 17:02:47 +10:00
cc001c4788 win32/handle: merge various handle wrapper classes 2016-04-27 17:01:45 +10:00
eb1b042e06 j/except: remove useless inherited constructor 2016-04-27 16:12:45 +10:00
df9d0ce432 format: add invalid_specifier exception 2016-04-27 16:12:24 +10:00
61ba8e5186 format: add char specialisation to is_type_specifier 2016-04-27 16:08:28 +10:00
abce134089 except: add missing methods to win32_error 2016-04-27 16:07:42 +10:00
a941f4d74e except: add code and last_code accessors to errno_error 2016-04-27 16:06:58 +10:00
354573f369 except: rename errno_error::id to m_code 2016-04-27 16:06:32 +10:00
b1eb9982d1 introspection: add more types to type_string 2016-04-27 16:05:16 +10:00
6e656444c6 backtrace_stackwalk: add StackWalk64 backtrace
Wine does not implement CaptureStackBackTrace, so we have to use
StackWalk64 where possible.
2016-04-27 16:00:26 +10:00
2434424488 maths: explicitly inline small methods
Avoids multiply defined symbols when using more aggressive inlining
2016-04-27 15:57:05 +10:00
a803a13e80 backtrace_win32: avoid using win32 wrappers
We have to be extraodinarily careful about what functions are called at
this low level so it's easier to just avoid any protective wrappers.
2016-04-27 15:53:53 +10:00
1356391259 cmdopt: move bool parsing into inline headers
This avoids multiple definition issues with more aggressive inliners, eg
mingw
2016-04-27 15:52:52 +10:00
0ec92951fc vector: remove redundant almost_equal definition 2016-04-22 16:16:26 +10:00
d034b114c7 backtrace_win32: output to correct stream 2016-04-21 13:52:49 +10:00
4533f02588 pkg-config.pc.in: use Libs.private 2016-04-19 17:27:13 +10:00
79f01943d5 m4/boost: dont pollute LIBS 2016-04-19 17:25:41 +10:00
7605abeb44 backtrace/win32: enable win32 backtrace support 2016-04-19 16:08:56 +10:00
3a2b33e0df win32/handle: add simple handle wrapper 2016-04-19 16:08:25 +10:00
aa780963e0 io: support piped streams in slurp 2016-04-19 14:52:05 +10:00
568af11a0a debug: remove nullary panic function
panic without message tended to promote useless console output. if it's
worth panicing over it's worth writing a oneliner.
2016-04-19 14:50:13 +10:00
3a6faca98f maths: use structured assertions in imit 2016-04-19 14:49:17 +10:00
335703b147 debug: cache win32 error code before logging
the code beneath LOG_WARNING and friends is opaque, and may accidentally
replace the value of GetLastError before we have a chance to render it.
2016-04-15 15:56:51 +10:00