The Windows exe has to be linked statically, because Windows
is stupid and doesn't have dynamic libraries like the stdc++ lib
available. Maybe it's in some .dll somewhere, but I can't be
bothered. Linux is just better.
The change to the location of flush will make the output look
more "spigot"-like, ie with large numbers of digits generated,
the digits will be output in small groups instead of a nice
smooth digit at a time. For some reason this is how most
spigot algorithms do it, and so to me it "looks" correct. It
doesn't actually change anything whatsoever other than when
the standard output actually gets printed to console.
Code is licensed under the MPLv2. Changed the makefile to, by
default, optimize to level 3. make debug will remove optimization
and add gdb debugging symbols, which slows output down quite
a bit. Removed an assertion leftover from bug squashing.
I totally brainfarted and put this->preDigits.size() in the for
loop comparison clause, which gets re-evaluated every loop.
So it was leaving digits on the stack that should have been
printed, causing errors both immediately and down the line.