summaryrefslogtreecommitdiffstats
path: root/eshtrans
Commit message (Collapse)AuthorAgeFilesLines
* eshtrans/frontend: Fix lungetc()P. J. McDermott2016-02-281-2/+1
| | | | It needn't be called for non-backslash word characters.
* eshtrans: Preserve trailing whitespace in input filesP. J. McDermott2016-02-281-3/+7
|
* eshtrans/frontend: Drop extra scan_word() argumentP. J. McDermott2016-02-281-1/+1
|
* eshtrans/frontend: Fix lsetc()P. J. McDermott2016-02-281-8/+4
|
* eshtrans/frontend: Fix lungetc()P. J. McDermott2016-02-271-1/+4
|
* Revert "eshtrans/frontend: Comment out dbg() and its calls"P. J. McDermott2016-02-271-16/+16
| | | | | | | This reverts commit c9b9e578ed90b5421ae77f7e55941be09f17bdab. Conflicts: eshtrans/frontend/lexer.esh
* eshtrans/frontend: Fix ungetc code and run_sublexer()P. J. McDermott2016-02-271-39/+24
|
* [WIP] eshtrans/frontend: Split input into internal char arrayP. J. McDermott2016-02-273-24/+62
|
* eshtrans/backend: Split tokens array into internal char arrayP. J. McDermott2016-02-272-7/+38
| | | | Don't read characters one at a time with dd.
* eshtrans/frontend: Fix string length param expansionsP. J. McDermott2016-02-271-1/+1
|
* eshtrans/frontend: Use printf in accept() instead of str concatP. J. McDermott2016-02-261-13/+7
| | | | | This results in a very slight performance boost, trading memcpy()s for write()s.
* eshtrans/Makefile: Remove dependencies on MakefileP. J. McDermott2016-02-261-4/+4
|
* eshtrans/Makefile: Make libeshprof optionalP. J. McDermott2016-02-261-4/+8
|
* eshtrans/Makefile: Simplify stage targetsP. J. McDermott2016-02-261-8/+2
|
* eshtrans/Makefile: Don't manage ../libeshprof/hooks.eshP. J. McDermott2016-02-261-6/+6
|
* eshtrans/frontend: Comment out dbg() and its callsP. J. McDermott2016-02-261-16/+16
|
* eshtrans/Makefile: Add profiling and indent submake outputP. J. McDermott2016-02-241-8/+8
|
* eshtrans/Makefile.old, eshtrans/bootstrap.sh: RemoveP. J. McDermott2016-02-242-44/+0
|
* eshtrans/Makefile: Handle bootstrappingP. J. McDermott2016-02-241-11/+43
|
* eshtrans/bootstrap.sh: Fix output and add timesP. J. McDermott2016-02-241-6/+6
|
* eshtrans: Add new bootstrap scriptP. J. McDermott2016-02-231-0/+16
|
* eshtrans/Makefile: Build eshtrans with itselfP. J. McDermott2016-02-232-4/+30
| | | | The old bootstrapping/stage-one makefile is kept at Makefile.old.
* ..Now you don'tP. J. McDermott2016-02-231-18/+0
|
* Pre-eshld three-stage bootstrap script: Now you see it...P. J. McDermott2016-02-231-0/+18
| | | | | | eshtrans was first able to pass a three-stage bootstrap at commit f6e7120 and failed to bootstrap with this script beginning at commit c8148e0 (when the runtime library became required).
* eshtrans/backend: Don't write trailing spacesP. J. McDermott2016-02-231-1/+14
|
* eshtrans/backend: Add static var values array initializationP. J. McDermott2016-02-231-0/+1
|
* eshtrans/Makefile, eshld/Makefile: Make executables executableP. J. McDermott2016-02-231-0/+1
|
* eshtrans/backend: Fix names in static function arraysP. J. McDermott2016-02-231-1/+1
|
* eshtrans/frontend: Inject ";" before __fn_end() callP. J. McDermott2016-02-231-0/+1
|
* eshtrans/backend: Add __tu_end() callP. J. McDermott2016-02-232-3/+7
|
* eshtrans/backend: Adjust whitespace after __fn_endP. J. McDermott2016-02-231-1/+4
|
* eshtrans/backend: Add TU to __fn_start callsP. J. McDermott2016-02-231-2/+3
|
* eshtrans/backend: Delimit func start/end calls with ";"P. J. McDermott2016-02-231-2/+2
|
* eshtrans/frontend: Accept any compound command in function bodyP. J. McDermott2016-02-231-7/+4
|
* eshtrans: Add T_LOCALP. J. McDermott2016-02-223-6/+9
|
* eshtrans/Makefile: New fileP. J. McDermott2016-02-221-0/+27
|
* eshtrans/backend: Add function start/end callsP. J. McDermott2016-02-221-3/+19
|
* eshtrans/frontend: Accept T_RETURNP. J. McDermott2016-02-221-0/+5
|
* eshtrans/frontend: Inject function start/end tokensP. J. McDermott2016-02-221-2/+8
|
* eshtrans/frontend: Add inject() functionP. J. McDermott2016-02-221-0/+9
|
* eshtrans: Add function start/end tokensP. J. McDermott2016-02-221-0/+6
|
* eshtrans/backend: Add support for static vars and functionsP. J. McDermott2016-02-222-0/+64
|
* eshtrans/backend: Generate translation unit IDP. J. McDermott2016-02-225-3/+21
|
* eshtrans: Add proper user interfaceP. J. McDermott2016-02-211-95/+69
|
* eshtrans/frontend: Fix line numbersP. J. McDermott2016-02-212-2/+6
|
* eshtrans/frontend: Escape "$" in patternsP. J. McDermott2016-02-211-3/+3
|
* eshtrans: Accept any input fileP. J. McDermott2016-02-211-3/+5
| | | | eshtrans is now able to compile itself.
* eshtrans/frontend: Fix validation patterns in accept()P. J. McDermott2016-02-211-4/+6
|
* eshtrans/frontend: Handle T_IO_NUMBERsP. J. McDermott2016-02-214-3/+34
| | | | Also fix a couple bugs in accept().
* eshtrans/frontend: Don't trim trailing tokens from scannersP. J. McDermott2016-02-212-28/+19
| | | | | | | | | | | | | | | | | | Before we'd get things like this: Input: $(foo bar) Output: $(foo ) Input: $(($(foo bar) + 1)) Output: $(($(foo ) + 1)) Now we get things like this: Input: $(foo bar) Output: $(foo bar ) Input: $(($(foo bar) + 1)) Output: $(($(foo bar ) + 1))