libfawk 1.2.0 (r895) ~~~~~~~~~~~~~~~~~~~~ [doc] -Fix: typo: example for <= and >= had the wrong operator -Fix: missing -Add: text block does not accept empty expression -Add: document the no-array-in-array limitation of [] [fawk] -Fix: expect stack to be empty only if there was no runtime error; indicate runtime error [libfawk] -Change: API CHANGE: fawk_error() gets location information in separate arguments so the error print function does not have to figure it from the context -Optimize: remove code duplications to reduce code size -Fix: compiling instruction .line field from the wrong context field -Fix: libfawk_error() needs to get line number of column number location info as long (because int may be as small as 16 bits) -Fix: ABORT uses libfawk_error for announcing the message instead of fprintf to stderr -Fix: uninitialized var on array index conversion -Fix: low level numeric conversion in the parser doesn't depend on double but uses fawk_num_t since strtod is also virtualized -Fix: textblock expression may contain spaces before the escape-back-to-text character -Fix: ungetch returning to previous line restores previous max col value too instead of reporting 1000 -Fix: for(in) shouldn't crash for non-existing arrays (e.g. A.X where A[] is empty) -Fix: create local var array on first symref -Fix: textblk accepts [] in expression -Fix: don't abort after failed to-string cast -Fix: do not assert but return runtime error for FOO[1][] -Fix: accept STRNUM for STR for succesful cast in concat -Fix: typo in cast-to-str: fallback result should be NIL or STR -Cleanup: namespace pollution: CURR_IP and PUSH_IP are now FAWK_ prefixed -Add: centralzie fawk_assert(), stop using assert() directly -Add: virtualize strtod() to fawk_strtod() so caller has a chance to replace the numeric type without having to convert doubles -Add: virtualize fmod() into fawk_fmod() so execute.c doesn't depend on math.h -Add: do not hardwire %f and %g in numeric printf, because the numeric type is user defined; use a printf format string define in the config [sc] -Add: make fawk_assert() redefinable -Add: make math.h optional