Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | More valgrind integration. Vector objects keep displaced pointers | Kaz Kylheku | 2009-11-25 | 1 | -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 false | Kaz Kylheku | 2009-11-25 | 1 | -0/+18 | |
| | | | | positives when gc is accessing uninitialized parts of the stack. | |||||
* | Fix uninitialized memory locations. | Kaz Kylheku | 2009-11-24 | 1 | -0/+12 | |
| | ||||||
* | Switching to keyword symbols for :args and :nothrow. | Kaz Kylheku | 2009-11-24 | 1 | -0/+16 | |
| | ||||||
* | utf8.c (utf8_from_uc): Fix bug introduced several commits ago (portingtxr-025 | Kaz Kylheku | 2009-11-24 | 1 | -0/+7 | |
| | | | | to C++). Caught by regression test suite. Found using git bisect. | |||||
* | Version 025 | Kaz Kylheku | 2009-11-24 | 1 | -0/+54 | |
| | ||||||
* | Auto-detect what specifiers to use for inline functions. | Kaz Kylheku | 2009-11-24 | 1 | -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, which | Kaz Kylheku | 2009-11-24 | 1 | -0/+35 | |
| | | | | can be taken advantage of for better diagnostics. | |||||
* | Fixed broken yyerrorf. It was still taking char *, and passing | Kaz Kylheku | 2009-11-24 | 1 | -0/+16 | |
| | | | | | that as an object to vformat, resulting in #<garbage: ...> output. | |||||
* | Renaming global variables that denote symbols, such that they | Kaz Kylheku | 2009-11-24 | 1 | -0/+63 | |
| | | | | have a _s suffix. | |||||
* | * configure (platform_flags, remove_flags): New config variables. | Kaz Kylheku | 2009-11-23 | 1 | -0/+6 | |
| | | | | * Makefile (CFLAGS): Take into account new flags. | |||||
* | Follow up on 64 bit compilation warnings. | Kaz Kylheku | 2009-11-23 | 1 | -0/+11 | |
| | ||||||
* | * Makefile (conftest.o): revert change that took CFLAGS from | Kaz Kylheku | 2009-11-23 | 1 | -0/+5 | |
| | | | | this target. | |||||
* | * configure: Don't rely on higher precision arithmetic from the build | Kaz Kylheku | 2009-11-23 | 1 | -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 easier | Kaz Kylheku | 2009-11-23 | 1 | -0/+14 | |
| | | | | configure debugging. | |||||
* | * configure: Bugfix in parsing configuration variables | Kaz Kylheku | 2009-11-23 | 1 | -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 first | Kaz Kylheku | 2009-11-23 | 1 | -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 Kylheku | 2009-11-23 | 1 | -0/+5 | |
| | | | | caught by gcc 4.1.1. | |||||
* | * configure (cross): Print out value of $cross in --help. | Kaz Kylheku | 2009-11-23 | 1 | -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 pointers | Kaz Kylheku | 2009-11-23 | 1 | -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 in | Kaz Kylheku | 2009-11-21 | 1 | -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 Kylheku | 2009-11-20 | 1 | -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 assign | Kaz Kylheku | 2009-11-20 | 1 | -0/+5 | |
| | | | | a value to $$. | |||||
* | * match.c (dest_bind): Extended to handle more general forms | Kaz Kylheku | 2009-11-20 | 1 | -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 function | Kaz Kylheku | 2009-11-20 | 1 | -0/+5 | |
| | | | | should not map nil -> (nil), but nil -> nil. | |||||
* | Changing ``obj_t *'' occurences to a ``val'' typedef. (Ideally, | Kaz Kylheku | 2009-11-20 | 1 | -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 Kylheku | 2009-11-19 | 1 | -0/+4 | |
| | ||||||
* | Get rid of macros in favor of safer inline functions. | Kaz Kylheku | 2009-11-19 | 1 | -0/+16 | |
| | | | | | The recent auto_str("byte str") error could have been caught at compile time. | |||||
* | Version 024.txr-024 | Kaz Kylheku | 2009-11-19 | 1 | -0/+13 | |
| | ||||||
* | Use unsigned char * as allocator return value. | Kaz Kylheku | 2009-11-19 | 1 | -0/+10 | |
| | ||||||
* | Following-up on diagnostics obtained by running code through C++ | Kaz Kylheku | 2009-11-18 | 1 | -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 collect | Kaz Kylheku | 2009-11-18 | 1 | -1/+11 | |
| | | | | that doesn't match anything. | |||||
* | Fix total breakage of yyerror and yyerrorf. | Kaz Kylheku | 2009-11-18 | 1 | -0/+7 | |
| | ||||||
* | txr.1: Clarified handling of UTF-8, now that it's precise and portable. | Kaz Kylheku | 2009-11-18 | 1 | -0/+4 | |
| | ||||||
* | Version 023. | Kaz Kylheku | 2009-11-18 | 1 | -0/+20 | |
| | ||||||
* | More removal of C99 wide character I/O, and tightening up | Kaz Kylheku | 2009-11-17 | 1 | -0/+25 | |
| | | | | 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 | 1 | -0/+21 | |
| | ||||||
* | Warning fixes. | Kaz Kylheku | 2009-11-17 | 1 | -0/+13 | |
| | ||||||
* | * lib.c (chrp): Fix broken is_chr(num) call. | Kaz Kylheku | 2009-11-17 | 1 | -0/+4 | |
| | ||||||
* | * regex.c (nfa_all_states, nfa_closure): visited parameter | Kaz Kylheku | 2009-11-17 | 1 | -0/+5 | |
| | | | | should be unsigned. | |||||
* | Fixes for compliance to C89. | Kaz Kylheku | 2009-11-17 | 1 | -0/+26 | |
| | ||||||
* | Version 022.txr-022 | Kaz Kylheku | 2009-11-17 | 1 | -0/+18 | |
| | ||||||
* | * Makefile (rebuild): New target. Tired of doing make clean; make. | Kaz Kylheku | 2009-11-16 | 1 | -0/+4 | |
| | ||||||
* | Big round of changes to switch the code base to use the stream | Kaz Kylheku | 2009-11-16 | 1 | -0/+96 | |
| | | | | | | | | | | | | | | | | | abstraction instead of directly using C standard I/O, to eliminate most uses of C formatted I/O, and fix numerous bugs, such variadic argument lists which lack a terminating ``nao'' sentinel. Bug 28033 is addressed by this patch, since streams no longer provide printf-compatible formatting. The native formatter is extended with some additional capabilities to take over. The work on literal objects is expanded and they are now used throughout the code base. Fixed bad realloc in string output stream: reallocating by number of wide chars rather than bytes. | |||||
* | Use the 11 tag bit pattern to denote a new type: LIT. This is a | Kaz Kylheku | 2009-11-16 | 1 | -0/+20 | |
| | | | | | pointer to a C static string, intended for literals. We can now treat literal strings as light-weight objects. | |||||
* | * lib.c (chr): Take wchar_t argument, not int. Dropped range check. | Kaz Kylheku | 2009-11-15 | 1 | -0/+7 | |
| | | | | | | (c_chr): Return wchar_t not int. * lib.h (chr, c_chr): Declarations updated. | |||||
* | Version 021 preparation.txr-021 | Kaz Kylheku | 2009-11-15 | 1 | -0/+45 | |
| | | | | Bumped version numbers, and cleaned up trailing whitespace from some files. | |||||
* | Provide both char * and unsigned char * interfaces in UTF-8 module. | Kaz Kylheku | 2009-11-14 | 1 | -0/+16 | |
| | | | | Fix unsigned and plan char * mixing. | |||||
* | dep.mk: Regenerated. | Kaz Kylheku | 2009-11-14 | 1 | -0/+2 | |
| |