Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Check for user's specified yacc program. | Kaz Kylheku | 2009-11-26 | 1 | -0/+4 | |
| | ||||||
* | Not all systems have a yacc alias for the yacc program. | Kaz Kylheku | 2009-11-26 | 3 | -8/+89 | |
| | | | | | 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 valgrind | Kaz Kylheku | 2009-11-26 | 2 | -2/+9 | |
| | | | | accessibility of the heap object if valgrind debugging is not enabled. | |||||
* | * parser.y (grammar): Fixes for bison 2.4.1. Remove superfluous action | Kaz Kylheku | 2009-11-26 | 2 | -2/+6 | |
| | | | | in chrlit. Include <stdlib.h> for abort. | |||||
* | Refinements to Valgrind support. | Kaz Kylheku | 2009-11-25 | 2 | -2/+40 | |
| | ||||||
* | More Valgrind support. New option --vg-debug which turns on | Kaz Kylheku | 2009-11-25 | 4 | -11/+78 | |
| | | | | | Valgrind protection of free blocks. This works independently of --gc-debug. | |||||
* | Fix a build breakage that may happen on some platforms. | Kaz Kylheku | 2009-11-25 | 2 | -0/+14 | |
| | | | | | | | | | 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. | |||||
* | Clean up properly. | Kaz Kylheku | 2009-11-25 | 1 | -2/+2 | |
| | ||||||
* | More valgrind integration. Vector objects keep displaced pointers | Kaz Kylheku | 2009-11-25 | 3 | -0/+22 | |
| | | | | | | | | 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 false | Kaz Kylheku | 2009-11-25 | 3 | -11/+71 | |
| | | | | positives when gc is accessing uninitialized parts of the stack. | |||||
* | Fix uninitialized memory locations. | Kaz Kylheku | 2009-11-24 | 3 | -1/+16 | |
| | ||||||
* | Switching to keyword symbols for :args and :nothrow. | Kaz Kylheku | 2009-11-24 | 6 | -29/+50 | |
| | ||||||
* | Whitespace. | Kaz Kylheku | 2009-11-24 | 2 | -3/+3 | |
| | ||||||
* | utf8.c (utf8_from_uc): Fix bug introduced several commits ago (portingtxr-025 | Kaz Kylheku | 2009-11-24 | 2 | -0/+8 | |
| | | | | to C++). Caught by regression test suite. Found using git bisect. | |||||
* | Version 025 | Kaz Kylheku | 2009-11-24 | 4 | -3/+57 | |
| | ||||||
* | Auto-detect what specifiers to use for inline functions. | Kaz Kylheku | 2009-11-24 | 4 | -22/+90 | |
| | | | | | Allow compiler command to be set independently of full path for easier compiler switching. | |||||
* | Changes to make the code portable to C++ compilers, which | Kaz Kylheku | 2009-11-24 | 8 | -42/+81 | |
| | | | | can be taken advantage of for better diagnostics. | |||||
* | Fixed broken yyerrorf. It was still taking char *, and passing | Kaz Kylheku | 2009-11-24 | 4 | -34/+57 | |
| | | | | | that as an object to vformat, resulting in #<garbage: ...> output. | |||||
* | Renaming global variables that denote symbols, such that they | Kaz Kylheku | 2009-11-24 | 11 | -275/+345 | |
| | | | | have a _s suffix. | |||||
* | * configure (platform_flags, remove_flags): New config variables. | Kaz Kylheku | 2009-11-23 | 3 | -3/+25 | |
| | | | | * Makefile (CFLAGS): Take into account new flags. | |||||
* | Follow up on 64 bit compilation warnings. | Kaz Kylheku | 2009-11-23 | 3 | -3/+14 | |
| | ||||||
* | WTF | Kaz Kylheku | 2009-11-23 | 1 | -1/+1 | |
| | ||||||
* | * Makefile (conftest.o): revert change that took CFLAGS from | Kaz Kylheku | 2009-11-23 | 2 | -1/+6 | |
| | | | | this target. | |||||
* | * configure: Don't rely on higher precision arithmetic from the build | Kaz Kylheku | 2009-11-23 | 2 | -3/+10 | |
| | | | | | | 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 easier | Kaz Kylheku | 2009-11-23 | 3 | -14/+38 | |
| | | | | configure debugging. | |||||
* | * configure: Bugfix in parsing configuration variables | Kaz Kylheku | 2009-11-23 | 3 | -6/+13 | |
| | | | | | | | | 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 first | Kaz Kylheku | 2009-11-23 | 2 | -1/+7 | |
| | | | | | 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 Kylheku | 2009-11-23 | 2 | -2/+7 | |
| | | | | caught by gcc 4.1.1. | |||||
* | * configure (cross): Print out value of $cross in --help. | Kaz Kylheku | 2009-11-23 | 4 | -14/+23 | |
| | | | | | | | * 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 pointers | Kaz Kylheku | 2009-11-23 | 19 | -104/+377 | |
| | | | | | | | | 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 in | Kaz Kylheku | 2009-11-21 | 13 | -154/+382 | |
| | | | | | | | | | | 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 Kylheku | 2009-11-20 | 4 | -23/+44 | |
| | | | | | | 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 assign | Kaz Kylheku | 2009-11-20 | 2 | -12/+28 | |
| | | | | a value to $$. | |||||
* | * match.c (dest_bind): Extended to handle more general forms | Kaz Kylheku | 2009-11-20 | 2 | -15/+20 | |
| | | | | | | | 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 function | Kaz Kylheku | 2009-11-20 | 2 | -0/+8 | |
| | | | | should not map nil -> (nil), but nil -> nil. | |||||
* | Changing ``obj_t *'' occurences to a ``val'' typedef. (Ideally, | Kaz Kylheku | 2009-11-20 | 19 | -992/+991 | |
| | | | | | 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 Kylheku | 2009-11-19 | 2 | -11/+15 | |
| | ||||||
* | Get rid of macros in favor of safer inline functions. | Kaz Kylheku | 2009-11-19 | 5 | -15/+56 | |
| | | | | | The recent auto_str("byte str") error could have been caught at compile time. | |||||
* | Version 024.txr-024 | Kaz Kylheku | 2009-11-19 | 3 | -2/+15 | |
| | ||||||
* | Use unsigned char * as allocator return value. | Kaz Kylheku | 2009-11-19 | 4 | -5/+15 | |
| | ||||||
* | Following-up on diagnostics obtained by running code through C++ | Kaz Kylheku | 2009-11-18 | 6 | -25/+61 | |
| | | | | | | 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 collect | Kaz Kylheku | 2009-11-18 | 2 | -7/+13 | |
| | | | | that doesn't match anything. | |||||
* | Fix total breakage of yyerror and yyerrorf. | Kaz Kylheku | 2009-11-18 | 2 | -2/+10 | |
| | ||||||
* | txr.1: Clarified handling of UTF-8, now that it's precise and portable. | Kaz Kylheku | 2009-11-18 | 2 | -4/+23 | |
| | ||||||
* | Version 023. | Kaz Kylheku | 2009-11-18 | 3 | -2/+22 | |
| | ||||||
* | More removal of C99 wide character I/O, and tightening up | Kaz Kylheku | 2009-11-17 | 6 | -24/+55 | |
| | | | | of standard conformance. | |||||
* | Whitespace. | Kaz Kylheku | 2009-11-17 | 1 | -1/+1 | |
| | ||||||
* | Removing use of C99 wide character I/O. | Kaz Kylheku | 2009-11-17 | 2 | -52/+60 | |
| | ||||||
* | Warning fixes. | Kaz Kylheku | 2009-11-17 | 5 | -5/+25 | |
| | ||||||
* | * lib.c (chrp): Fix broken is_chr(num) call. | Kaz Kylheku | 2009-11-17 | 2 | -1/+5 | |
| |