Releases: VorpalBlade/cfunge
Releases · VorpalBlade/cfunge
1,001
1,0
See the changelog for the full changelog.
1,0
During the development of this release the project was migrated from bzr on launchpad to git on GitHub.
Also as of 1,0 a new versioning scheme is used, see the README.
New features and improvements:
- Added alternative IP list implementation, that stores pointers to the IPs
instead. Useful for very large number (thousands) of IPs. This is now the
default since the performance drop with a small number of threads is tiny
compared to the increase for a large number of threads. - Cache env vars and other constant (per execution) data in y.
- Changed stack stack code to not realloc once for each call of { and }.
- Improved speed for non-cardinal warp.
- Made cfunge work with the PathScale EKOPath compiler.
- Add Zsh argument completion.
- Automated running of tests with ctest, including mycology.
Changed features:
- Dropped support for Boehm-GC. It was not well tested and manual memory
management worked better. - Removed scaling of coordinates from TURT.
- Dropped inline asm since intrinsics work well on modern GCC and ICC.
- Improved fuzz testing script, and support for AFL fuzz testing.
- Show more of the stack while tracing.
Major bug fixes:
- Fixed bugs in run_sys_info in stack_get_index that together caused
incorrect behaviour for y picking of top of stack and for last 0 below
env vars. - Removed counts from hash tables if they reach zero. Needed for large model
funge-space bounds shrinking logic to be correct. - Fixed bug in STRN G that resulted in an extra \0 being pushed.
- Fixed STRN G, it incorrectly subtracted 1 from string length when
calling stack_push_string(). - Fixed several STRN functions truncating strings to unsigned chars.
- Fixed bug in FILE causing a read of uninitialized memory when O (fopen) was
called with an invalid mode. - Fix issue where using y for picking from stack would count from the wrong
end of the stack. - Fix error handling of t (split).
- Fix s wrapping and add test for it.
- Fix (NCRS) for reentrant ncurses (thanks to Thomas Jollans @tjol)
Minor bug fixes:
- Fixed possible problem in FRTH for very large stack sizes (outside range
of funge cells, but inside range of size_t). - Various small fixes for clang and ICC.
- Various build system fixes.
- Handle zero bytes properly in stdin. Note that STRN still retains the old
behaviour and arguably should do so. - Fixed various bugs (including memory leaks) when out of memory.
- Fixed bug in text mode file output for lines with a single (non-space)
char on them. - Add missing NULL pointer checks in code for i, o and = as well as in several
fingerprints. - Fix several memory leaks on malloc failure (out of memory).
- Fix pointer to out of scope buffer discovered with Coverity Scan.
- Fix crash on integer division of -2^63 / -1
- Fix some allocation size overflows in stack code.
Added fingerprints:
- BOOL Logic Functions
0.9.0
Mark this as a release (it was made many years ago)