Commit Graph

95 Commits

Author SHA1 Message Date
4a4d5f297a types/traits: use LessThanComparable more consistently 2019-02-03 17:28:53 +11:00
88df4459f0 debug: change default unreachable message 2019-01-29 16:40:28 +11:00
f51beedcdd debug: cast unhandled enum to int before printing 2019-01-15 13:00:49 +11:00
c5ed42ccbf debug: defend against renaming of panic using macros 2018-08-24 17:31:54 +10:00
f6056153e3 rename root namespace from util to cruft
This places, at long last, the core library code into the same namespace
as the extended library code.
2018-08-05 14:42:02 +10:00
803acc9a87 relicense under MPL-2.0 2018-08-04 15:14:06 +10:00
7ff2f38fd6 debug: allow variadic CHECK_SANITY for aux sanity variables 2018-06-29 17:34:22 +10:00
23e581ad6a debug: allow specialisation of validator for aux validation variables 2018-06-29 13:32:52 +10:00
0eb7fdf5cd debug: add breakpoints on CHECK failures again 2018-05-10 14:53:43 +10:00
4116442e40 debug: don't rely on format for output
debug is relied upon by a great deal of other units so it's very
difficult to include other popular headers like format.hpp without
triggering cyclic dependencies.
2018-05-10 12:44:03 +10:00
9f1f3633e2 debug: catch exceptions by constref in CHECK_THROWS 2018-05-03 17:32:03 +10:00
c5d142ec9a debug: seperate SCOPED_SANITY from CHECK_SANITY
the former is for checking immediately and a scope exit, the latter is
for checking immediately.
2018-04-24 15:12:09 +10:00
f5399450ab debug: add RETURN_UNLESS convenience macro
returns a given value unless a condition is true. primarily useful for
computing is_valid and breaking if one of the preconditions isn't valid.
2018-04-24 15:11:18 +10:00
90244c5347 debug: remove overly complicated specialisation of validator 2018-04-23 15:39:20 +10:00
97f64490cf debug: add WARN_RETURN macro 2018-04-23 15:39:07 +10:00
5ba9da1828 debug: check sanity at end of scope for CHECK_SANITY 2018-04-18 21:43:58 +10:00
42ab7543a7 debug: add CHECK_FINITE assertion 2018-04-16 16:00:32 +10:00
cd06fdcd67 debug: add assertions_enabled variable 2018-04-05 12:13:37 +10:00
2d7e3e5d7d build: prefer iosfwd over iostream 2018-03-22 16:11:13 +11:00
d47f9e0cce debug: write threadid to trace output 2018-03-22 13:20:23 +11:00
0cf530c2de debug: use macros for DEBUG_ONLY macro 2018-03-20 14:49:46 +11:00
0e3fa05f05 build: migrate from ipp files to pure hpp files
ipp files weren't a great way of keeping things clean, and IDEs have a
little trouble dealing with the split configuration. this simplifies
debugging a great deal.
2018-02-28 11:49:13 +11:00
ed7ab6cb9e debug: add validate specialisation for pointers 2018-01-01 13:40:34 +11:00
0351313c36 Merge branch 'master' into coord 2017-11-23 17:24:11 +11:00
34788756d2 build: don't use './' as an include prefix
GCC produces ODR error when including paths of the form './foo' and
'foo' in the same binary. Rather than managing duplication we just
universally pick the absolute form over the relative form.
2017-11-22 16:49:37 +11:00
09a624bf88 debug: add unhandled debug function 2017-09-17 12:41:23 +10:00
d0e49fb1a8 debug: expose NDEBUG as a constexpr bool 2017-09-13 12:37:53 +10:00
46d28ba7be debug: add variable escape and memory clobber functions 2017-08-18 11:15:00 +10:00
2b3ef6dbc6 debug: correct CHECK_NEZ error message 2017-08-02 16:17:24 +10:00
167aae1d1e debug: fully qualify almost_equal namespace 2017-05-18 18:20:19 +10:00
353cf839d4 use nested namespace declarations 2017-01-05 15:06:49 +11:00
fde9b281be debug: correct DEBUG_LIMIT print ordering 2016-12-21 20:23:43 +11:00
185942593e debug: consistent spacing 2016-12-21 20:23:43 +11:00
26bab4db71 debug: revert DEBUG_ONLY name change
DEBUG_ONLY is visible to other projects. Changing it to have internal
scope introduces too many build failures currently.
2016-09-28 17:24:01 +10:00
657a407d0e debug: respecte NDEBUG for CHECK macros 2016-09-28 17:20:46 +10:00
00eca4445b debug: use less complex specialistion for validator 2016-08-10 17:36:25 +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
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
9b4ce6555e debug: add CHECK_SANITY macro 2016-06-24 15:30:41 +10:00
af699c5443 debug: correct format specifier for CHECK_{EZ,NEQ} 2016-06-20 13:07:10 +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
df05596524 debug: seperate platform specifics into units 2016-02-15 17:21:01 +11:00
0af631e975 debug: fix CHECK_ENUM format string specifier 2016-02-12 12:57:53 +11:00
f6d8bca9a9 debug: fix condition sense in CHECK_ENUM 2016-02-12 12:57:23 +11:00
a6b86bed92 debug: add unimplemented alias for not_implemented 2016-02-10 13:05:53 +11:00
688efb3a96 debug: add CHECK_ENUM 2016-02-05 14:27:58 +11:00
f1250b139a debug: remove unneeded headers from debug 2016-02-05 14:27:21 +11:00
2224131955 debug: simplify CHECK macros for constexpr safety 2016-02-03 12:04:47 +11:00