summaryrefslogtreecommitdiffstats
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix for failing test suite on MIPS machine, due toKaz Kylheku2009-12-031-0/+12
| | | | gc failing to mark a local variable in txr_main.
* * Makefile (tests): Don't depend on the executable. Otherwise,Kaz Kylheku2009-12-021-0/+10
| | | | | | | | | during make install-tests, if it doesn't exist in the install directory, a gcc compile command gets deposited into the run.sh generated script. (install-tests): Fixes to make this work when using a separate build directory. Split the cpio -p job into a cpio -i piping into cpio -o.
* * Makefile (install-tests): New target. Provides a way to make theKaz Kylheku2009-12-021-0/+6
| | | | | test cases part of the installation, and a generated script to run the commands on the installation host.
* Fix annoyances with dependency generation, such as picking up localKaz Kylheku2009-12-021-0/+14
| | | | files that are not in the project.
* * Makefile (CFLAGS): If the compiler matches the pattern %g++,Kaz Kylheku2009-11-281-0/+6
| | | | | then remove some C-front-end-specific warnings from CFLAGS, which the g++ front end will complain about.
* * Makefile (CFLAGS): add -Dlint to CFLAGS when compiling y.tab.o.Kaz Kylheku2009-11-281-0/+7
| | | | | | This suppresses some warnings from a byacc-generated parser, and gets rid of a useless static sccsid array. May help with Bison-generated parser also.
* * parser.l: Use flex options to suppress generation of theKaz Kylheku2009-11-281-0/+6
| | | | | unused functons yyunput and yyinput, thus getting rid of some compiler diagnostics.
* Code cleanup. All private functions static. Private stuffKaz Kylheku2009-11-281-0/+68
| | | | in regex module not exposed in header. Etc.
* * configure: Workaround in banner code for coreutils printf %.*s bug.Kaz Kylheku2009-11-281-0/+4
|
* Switching to DESTDIR convention for install.Kaz Kylheku2009-11-271-0/+15
| | | | | Make install step does some things more correctly now, without relying on the install program.
* Version 026.txr-026Kaz Kylheku2009-11-261-0/+24
|
* Not all systems have a yacc alias for the yacc program.Kaz Kylheku2009-11-261-0/+16
| | | | | txr is known to work with two yacc implementations: GNU Bison and Berkeley yacc. Let's add some auto-detection for yacc.
* * gc.c (mark_mem_region): Bugfix: do not mess with the valgrindKaz Kylheku2009-11-261-0/+5
| | | | accessibility of the heap object if valgrind debugging is not enabled.
* * parser.y (grammar): Fixes for bison 2.4.1. Remove superfluous actionKaz Kylheku2009-11-261-0/+5
| | | | in chrlit. Include <stdlib.h> for abort.
* Refinements to Valgrind support.Kaz Kylheku2009-11-251-0/+19
|
* More Valgrind support. New option --vg-debug which turns onKaz Kylheku2009-11-251-0/+25
| | | | | Valgrind protection of free blocks. This works independently of --gc-debug.
* Fix a build breakage that may happen on some platforms.Kaz Kylheku2009-11-251-0/+12
| | | | | | | | | The parser.y file includes "utf8.h", which uses the the type wint_t. It also includes "lib.h" which uses "wchar_t". But it fails to include any headers which define these types. The generated y.tab.c picks up wchar_t by the Bison-inserted inclusion of <stdlib.h>, so that's how we got that. But wint_t does not come from any of the headers---if they are standard-conforming.
* More valgrind integration. Vector objects keep displaced pointersKaz Kylheku2009-11-251-0/+13
| | | | | | | | to vector data; they point to element 0 which is actually the third element of the vector. If an object is only referenced by interior pointers, Valgrind reports it as possibly leaked. This change conditionally adds a pointer to the true start of the vector, if Valgrind support is enabled.
* First stab at Valgrind integration. First goal: eliminate falseKaz Kylheku2009-11-251-0/+18
| | | | positives when gc is accessing uninitialized parts of the stack.
* Fix uninitialized memory locations.Kaz Kylheku2009-11-241-0/+12
|
* Switching to keyword symbols for :args and :nothrow.Kaz Kylheku2009-11-241-0/+16
|
* utf8.c (utf8_from_uc): Fix bug introduced several commits ago (portingtxr-025Kaz Kylheku2009-11-241-0/+7
| | | | to C++). Caught by regression test suite. Found using git bisect.
* Version 025Kaz Kylheku2009-11-241-0/+54
|
* Auto-detect what specifiers to use for inline functions.Kaz Kylheku2009-11-241-0/+20
| | | | | Allow compiler command to be set independently of full path for easier compiler switching.
* Changes to make the code portable to C++ compilers, whichKaz Kylheku2009-11-241-0/+35
| | | | can be taken advantage of for better diagnostics.
* Fixed broken yyerrorf. It was still taking char *, and passingKaz Kylheku2009-11-241-0/+16
| | | | | that as an object to vformat, resulting in #<garbage: ...> output.
* Renaming global variables that denote symbols, such that theyKaz Kylheku2009-11-241-0/+63
| | | | have a _s suffix.
* * configure (platform_flags, remove_flags): New config variables.Kaz Kylheku2009-11-231-0/+6
| | | | * Makefile (CFLAGS): Take into account new flags.
* Follow up on 64 bit compilation warnings.Kaz Kylheku2009-11-231-0/+11
|
* * Makefile (conftest.o): revert change that took CFLAGS fromKaz Kylheku2009-11-231-0/+5
| | | | this target.
* * configure: Don't rely on higher precision arithmetic from the buildKaz Kylheku2009-11-231-0/+7
| | | | | | machine's shell. POSIX requires shell arithmetic to be only signed long. We can't compute the INT_PTR_MAX constant in the shell, but rather generate a constant C expression to compute it.
* Reporting of compile errors during configuration for easierKaz Kylheku2009-11-231-0/+14
| | | | configure debugging.
* * configure: Bugfix in parsing configuration variablesKaz Kylheku2009-11-231-0/+9
| | | | | | | | which contain the = character. * Makefile (conftest.o): Pass full CFLAGS to configuration test builds. If some flags don't work with the compiler, this should be caught.
* * Makefile (CFLAGS): Added -I. so current directory is firstKaz Kylheku2009-11-231-0/+6
| | | | | in the include search path. This is needed for finding generated header files, when building in a separate directory.
* * lib.c (chk_malloc, chk_realloc): Fix diagnosable conversion,Kaz Kylheku2009-11-231-0/+5
| | | | caught by gcc 4.1.1.
* * configure (cross): Print out value of $cross in --help.Kaz Kylheku2009-11-231-0/+9
| | | | | | | * depend.txr: Add "config.h" to list of headers that are not prefixed with $(top_srcdir). * dep.mk: Regenerated.
* Improving portability. It is no longer assumed that pointersKaz Kylheku2009-11-231-0/+70
| | | | | | | | can be converted to a type long and vice versa. The configure script tries to detect the appropriate type to use. Also, some run-time checking is performed in the streams module to detect which conversions specifier strings to use for printing numbers.
* Introducing symbol packages. Internal symbols are now inKaz Kylheku2009-11-211-0/+80
| | | | | | | | | | a system package instead of being hacked with the $ prefix. Keyword symbols are provided. In the matcher, evaluation is tightened up. Keywords, nil and t are not bindeable, and errors are thrown if attempts are made to bind them. Destructuring in dest_bind is strict in the number of items. String streams are exploited to print bindings to objects that are not strings or characters. Numerous bugfixes.
* * unwind.c (uw_throw): If streams are not initialized,Kaz Kylheku2009-11-201-0/+20
| | | | | | we have an unhandled exception too early in initialization. Use C stream to print an error message and abort. Using the nil stream variable will just cause a recursion bomb.
* * parser.y (grammar): Fix error actions that do not assignKaz Kylheku2009-11-201-0/+5
| | | | a value to $$.
* * match.c (dest_bind): Extended to handle more general formsKaz Kylheku2009-11-201-0/+8
| | | | | | | by using eval_form rather than direct symbol binding lookups. False positive return fixed. (match_line): Fixed merge to use eval_from rather than direct symbol binding.
* * lib.c (flatten): Semantics change. The flatten functionKaz Kylheku2009-11-201-0/+5
| | | | should not map nil -> (nil), but nil -> nil.
* Changing ``obj_t *'' occurences to a ``val'' typedef. (Ideally,Kaz Kylheku2009-11-201-0/+16
| | | | | we wouldn't have to declare object variables at all, so why use an obtuse syntax to do so?)
* * txr.1: Fixed mangled formatting of exception handling example.Kaz Kylheku2009-11-191-0/+4
|
* Get rid of macros in favor of safer inline functions.Kaz Kylheku2009-11-191-0/+16
| | | | | The recent auto_str("byte str") error could have been caught at compile time.
* Version 024.txr-024Kaz Kylheku2009-11-191-0/+13
|
* Use unsigned char * as allocator return value.Kaz Kylheku2009-11-191-0/+10
|
* Following-up on diagnostics obtained by running code through C++Kaz Kylheku2009-11-181-0/+28
| | | | | | compiler. Idea: allocator functions return char * instead of void *, like malloc did in classic pre-ANSI C. That way we are forced to use a cast except when the target pointer is char * already.
* * match.c (match_line, match_files): Fix broken behavior of collectKaz Kylheku2009-11-181-1/+11
| | | | that doesn't match anything.
* Fix total breakage of yyerror and yyerrorf.Kaz Kylheku2009-11-181-0/+7
|