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
de483670c4
debug: rename unusual to warn
...
unusual is a stupid name
2016-01-20 16:38:01 +11:00