--- rpl/ChangeLog 2012/08/22 09:29:03 1.129 +++ rpl/ChangeLog 2013/04/17 13:53:17 1.172 @@ -1,3 +1,74 @@ +* Mon Apr 1 2013 BERTRAND Joël rpl-4.1.13 (RPL/2) +- Major regression is fixed in evaluation(). Local variables were exported +to called definitions. +* Mon Apr 1 2013 BERTRAND Joël rpl-4.1.13 (RPL/2) +- integer overflows have been fixed (NEG, ABS, minus); +- global variables can now be recalled from ATEXIT procedure; +- ATEXIT registered procedure is now executed even if program is stopped by +SIGINT; +- minor bug is fixed in TOKENIZE intrinsic instruction. TOKENIZE did not work on +a copy of input string; +- major bug (segfault) is fixed in liste_variables(). It only occurs +when this function is called with shared variables; +- all internal data are now stored in 64 bits wide integers (even is 32 bits +ABI is selected); +- major bug is fixed in recherche_instruction_suivante(). In some +circumstances, this function can return a spurious error; +- new NATIVE*(*) data format is added. By default, native*(*) is used +to write data without precision loss. It can also be used to write +complex objects like expressions, lists or tables; +- major bug is fixed in formateur(). When INT64_MIN was pushed into stack, +internal value was good but RPL/2 was not able to correctly display +this value. This bug comes from ABS as ABS(INT64_MIN) cannot be represented +in integer. All abs(), fabs() and labs() present in source code have been +checked to avoid this kind of bug; +- unformatted sockets are now usable as unformatted files; +- BACKSPACE now runs on unformatted file; +- major bug is fixed in BACKSPACE that didn't check if '"' characters were +escaped; +- CHARACTER*(n) format now counts escaped characters; +- transliteration is avoid in rpl-core file generation to authorize core +creation even if a transliteration error is caught; +- major bug is fixed in evaluation(). System stack was not correctly +destacked when execution error occurs; +- major bug is fixed in READ (socket interface); +- minor bug is fixed in analyse_flux(). +* Wed Feb 27 2013 BERTRAND Joël rpl-4.1.12 (RPL/2) +- bug is fixed in recherche_type(). { "\"" } was not evaluated as expected +as inner quote was not escaped; +- CIPHER new intrinsic is added to perform key generation, decryption and +encryption; +- CBC-CMAC digest is added; +- HMAC digest is added; +- DIGEST intrinsic is added; +- signal management is fixed to be usable on NetBSD; +- RPL/CAS autoconfiguration is upgraded; +- sqlite, openssl, giac, gmp ave been upgraded; +- SQLITE support is added in SQLQUERY, SQLCONNECT and SQLDISCONNECT. +* Tue Dec 18 2012 BERTRAND Joël rpl-4.1.11 (RPL/2) +- shared variables are now stored in a tree; +- lapack is upgraded to 3.4.2; +- only giac/src is built in rplcas (giac/Makefile.am is modified); +- gnuplot is upgraded to 4.6.1; +- giac, units and ncurses are upgraded; +- interprocess capabilities are removed when RPL/2 cannot run its initialization +routine to keep operating system as clean as possible; +- sem_wait() has to catch EINTR in thread_surveillance_signaux(); +- signal management is rewritten to avoid a strange bug on NetBSD. On NetBSD, +a signal handler can be called within a special thread and not in the +calling thread; +- static variables are now written in a variables tree; +- major bug is fixed in STO intrinsic. STO returns an error when it has +to create a global variable if intrinsic none (default) is set. +* Mon Oct 1 2012 BERTRAND Joël rpl-4.1.10 (RPL/2) +- FORALL intrinsic is added; +- major bug (deadlock) is fixed in CYCLE. Only occurs when CYCLE is called to +interrupt a loop from a subroutine within a compiled programm; +- workaround to avoid strange bug on slow network is written in READ +intrinsic; +- CRITICAL/END structure is added. When program enters in a critical +section, all other threads of the same process sleep until program leaves +critical section. * Wed Aug 22 2012 BERTRAND Joël rpl-4.1.9 (RPL/2) - giac is upgraded to 0.9.8; - ncurses is patched with last patches;