I’ve been working on my various C/C++ single header libraries some over the Christmas break, and I thought I’d just jot down the improvements I’ve made in a post.
process.h -> subprocess.h⌗
I’ve had a long standing complaint that the name
process.h conflicted with a
Windows system header. I’ve decided (after a good three years of indecision mind
you) to just
rename the header and the entry points
This isn’t a perfect solution, but it avoids me having to namespace my headers using my own name (which as a Scotsman I just can’t quite stomach for some reason).
I added the ability to assert/expect on pointers types, which was a longstanding annoyance. So the following now works:
int* a, *b; ASSERT_EQ(a, b);
I’ve also made it so that on GCC/Clang with C, or with C++11 using auto, you can perform checks on void-pointers, and things of array type:
static int data; void* a; ASSERT_EQ(a, data);
I also added a product page for utest.h to help me try and advertise it more greatly for people than before.
I fixed a bug with
in my UTF-8 parsing library and added some extra tests to stop the regression
The ‘bug’ wasn’t really a bug in that the function behaved in a similar
fashion to the specification of the GNU extension
strcasecmp that it is based
on, but it made sense to make
utf8casecmp match what