5c2952561b
exe: add freebsd image_path implementation
2016-05-13 15:22:42 +10:00
7cc4173dea
m4/nc_cxx: don't enable libcxx on clang by default
...
Some system libraries, like boost, may have linked against libstdc++ and
hence make breaking assumptions about std structure layouts.
eg, boost::filesystem::path and std::basic_string
2016-05-13 15:20:36 +10:00
8dc4abb69c
m/b/circular: use correct fd for MAP_ANONYMOUS
2016-05-13 13:56:53 +10:00
1bfe4867ad
m4: dont try Wno-gnu option under GCC
...
it will accept anything
2016-05-12 18:23:32 +10:00
3802de5ba3
coord/ops: disable scalar ops for non-arithmetic types
2016-05-12 18:22:55 +10:00
56948f9503
debug_posix: add freebsd constants to tracing code
2016-05-12 18:19:24 +10:00
afa60e9d1f
configure: add freebsd library for clock_gettime
2016-05-12 18:16:54 +10:00
87211eb45c
configure: cross-platform append for "-ldbghelp"
2016-05-12 18:16:18 +10:00
dc75a8ac34
configure: search for execinfo library
...
required under freebsd
2016-05-12 18:15:57 +10:00
a8650caa1c
configure: disable unused feature test macros
...
they were causing build errors under freebsd and it appears we aren't
using them anymore...
2016-05-12 18:15:01 +10:00
a22ca0575e
Makefile: add posix wrappers to freebsd build
2016-05-12 18:11:13 +10:00
c2310d5d50
build: explicitly allow anonymous structs
2016-05-12 18:06:12 +10:00
950c5ba0d4
ip: avoid temporary in test
2016-05-12 18:00:12 +10:00
829bdc2767
m/b/paged: annotate segv trigger for asan's benefit
2016-05-12 17:59:33 +10:00
e7c547f764
tuple: note why RTTI test was skipped
2016-05-12 17:59:08 +10:00
27b1bfc1ce
hmac: print test number in logs
2016-05-12 17:58:52 +10:00
78552cfcb2
rational: express assignment in terms of constructors
2016-05-12 17:55:20 +10:00
48e6446404
ip: express equality in terms of words
2016-05-12 17:54:44 +10:00
7f19e2bcce
ip: remove unneeded assignment operator
...
the constructor handles this for us
2016-05-12 17:54:17 +10:00
5e597eef25
io: remove uneeded stream_error destructor
2016-05-12 17:53:37 +10:00
06be0a128f
configure: test for dlsym and shm before their dependants
2016-05-12 17:52:37 +10:00
9d77c01dd3
configure: add debugging options after compilation tests
...
some debugging options interfere with linker/compilation tests due to
the extra libraries that, for example, asan or ubsan draw into the
build. perform these checks fairly late to avoid these errors.
2016-05-12 17:51:10 +10:00
1ec238638c
Makefile: ensure ASAN isn't triggered on deliberate SEGV
...
some of the memory buffer code triggers a SEGV deliberately in the
testing framework. setting allow_user_segv_handler=true stops it from
crashing our test early.
2016-05-12 17:49:11 +10:00
539188ffde
backtrace_execinfo: correct newlines for ostream
...
if addr2line wasn't found newlines weren't consistent
2016-05-12 17:47:47 +10:00
12f154d0cb
stream: work towards streambuf and stream impl
2016-05-12 17:47:22 +10:00
67402eee42
c/xxtea: style
2016-05-12 17:46:13 +10:00
640b4aa6ca
build: fix switch/enum coverage warnings
...
uncovered using clang's -Wswitch-enum
2016-05-12 17:45:29 +10:00
420e4215ef
backtrace: test doesn't actually require output
2016-05-12 17:44:44 +10:00
7d96d8dd2f
m/b/paged: use correct fd for MAP_ANONYMOUS
...
linux ignores the fd if you pass MAP_ANONYMOUS, but freebsd will return
with an error
2016-05-12 17:42:21 +10:00
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