Commit graph

3489 commits

Author SHA1 Message Date
Alex Shinn
95310e5823 no more strcpy/sprintf (issue #653) 2020-05-27 18:35:18 +09:00
Alex Shinn
255ee079e5 fix order of arguments in lset= 2020-05-27 14:27:31 +09:00
Alex Shinn
ca52b2ff97 Merge branch 'master' of github.com:ashinn/chibi-scheme 2020-05-27 07:54:53 +09:00
Alex Shinn
7b8b534a48 use (chibi test) for srfi 146 tests (issue #651) 2020-05-27 07:54:46 +09:00
Alex Shinn
add9983728
Merge pull request #652 from lassik/fix-printf
Fix printf warning in json.c
2020-05-27 07:51:52 +09:00
Lassi Kortela
c251594f0a Fix printf warning in json.c 2020-05-27 00:51:30 +03:00
Alex Shinn
9901a67b20 adding define-library-alias (issue #650) 2020-05-26 22:20:35 +09:00
Alex Shinn
0957b54f51 adding tangerine names for srfi 160 libs 2020-05-26 17:18:50 +09:00
Alex Shinn
1ee773fa42 adding srfi 146 to lib tests 2020-05-26 17:09:21 +09:00
Alex Shinn
11e0328fef adding (srfi 146 hash) 2020-05-26 17:05:07 +09:00
Alex Shinn
61680088d2 noting Marc's SRFIs 2020-05-26 14:17:07 +09:00
Alex Shinn
3a117b27aa adding srfi 146 2020-05-26 13:57:06 +09:00
Alex Shinn
fb079b2bda adding srfi 188 2020-05-26 10:12:27 +09:00
Alex Shinn
c0933e8255 Merge branch 'master' of github.com:ashinn/chibi-scheme 2020-05-25 19:02:03 +09:00
Alex Shinn
b1af52195a adding initial srfi 166 implementation 2020-05-25 19:01:03 +09:00
Alex Shinn
6b449150fc cleanup whitespace 2020-05-25 18:52:33 +09:00
Alex Shinn
7bbbb1fb2c avoid gc recursion on non-pointers 2020-05-25 18:50:47 +09:00
Alex Shinn
2315a11e7f
Merge pull request #648 from ekaitz-zarraga/unparse-json
Unparse json feature
2020-05-24 23:48:01 +09:00
Ekaitz Zarraga
28f3641583 Use SEXP_VOID instead of SEXP_NULL 2020-05-24 16:41:43 +02:00
Alex Shinn
110487b9b2
Merge pull request #649 from okuoku/fix-install
Makefile.detect: Fix installation
2020-05-24 16:57:40 +09:00
okuoku
21708b4cf3 Makefile.detect: Fix installation 2020-05-24 16:04:44 +09:00
Ekaitz Zarraga
6693e6bf18 Add tests 2020-05-23 16:05:02 +02:00
Ekaitz Zarraga
3745c16c8c Avoid using alloca in fixnum 2020-05-23 15:33:29 +02:00
Ekaitz Zarraga
a2312503c4 Flonum support 2020-05-23 15:28:48 +02:00
Ekaitz Zarraga
1ea46958a0 Add possible common error 2020-05-22 12:51:38 +02:00
Ekaitz Zarraga
a843591136 Clean formatting and remove unneeded comments 2020-05-22 12:51:38 +02:00
Ekaitz Zarraga
0e01716827 Exception handling 2020-05-22 12:51:38 +02:00
Ekaitz Zarraga
bb1fdbb719 Unparse Fixnums 2020-05-22 12:10:42 +02:00
Ekaitz Zarraga
57c5940855 Unparse Array and Object types 2020-05-22 12:10:42 +02:00
Ekaitz Zarraga
35cdd287ea Unparse string 2020-05-22 12:10:42 +02:00
Ekaitz Zarraga
de5a4b6b28 Copyright headers 2020-05-22 12:10:42 +02:00
Alex Shinn
62ef654817 clarifying in README that GNU make is used, movign all extensions to Makefile.detect (issue #642) 2020-05-22 15:06:45 +09:00
Alex Shinn
61f2983fad apply an explicit max vector length check (issue #636) 2020-05-22 14:13:48 +09:00
Alex Shinn
b459e11ecf
Merge pull request #647 from ekaitz-zarraga/float_parse
Correct float parsing when exponent has sign
2020-05-22 10:35:13 +08:00
Alex Shinn
bda192f071 cleanup json unicode escape code 2020-05-22 11:32:19 +09:00
Alex Shinn
278657eea4
Merge pull request #644 from ekaitz-zarraga/master
Support multiple \u sequences and add error checking
2020-05-22 10:11:10 +08:00
Ekaitz Zarraga
1cc24e37d9 Fix formatting 2020-05-22 00:30:24 +02:00
Ekaitz Zarraga
ce1996f1a7 Correct float parsing when exponent has sign 2020-05-21 18:10:54 +02:00
Ekaitz Zarraga
64d04f0638 Add JSON tests 2020-05-20 13:11:12 +02:00
Ekaitz Zarraga
e79d2aefea Support multiple \u sequences and check errors 2020-05-19 20:47:19 +02:00
Alex Shinn
8df9f7ca69
Merge pull request #643 from ekaitz-zarraga/master
Support for \u sequences in JSON
2020-05-19 09:18:00 +08:00
Ekaitz Zarraga
c448e8b441 Support for \u sequences in JSON 2020-05-18 22:39:33 +02:00
Alex Shinn
62efe38c70
Merge pull request #641 from amirouche/fix-emscripten-build
Fix build with emscripten to run chibi in the browser.
2020-05-17 19:17:13 +08:00
Amirouche
d2006daa3c Fix build with emscripten to run chibi in the browser.
emcc (Emscripten gcc/clang-like replacement) 1.39.16 (9ecd579ac647c4484e2d9af2ab0bbc1e1505aa95)

Thanks @pmp-p.
2020-05-17 10:52:46 +02:00
Alex Shinn
6e8b9bf59d adding srfi 165 2020-05-17 00:08:00 +09:00
Alex Shinn
af7189e895
Merge pull request #640 from Donaim/601
Prevent stack overflow in sexp_mark_one (issue #601)
2020-05-16 22:13:27 +08:00
Vitaliy Mysak
5726c2e490 Prevent stack overflow in sexp_mark_one (issue #601)
Replace explicit recursion by heap allocations
in sexp_mark_one code.
This prevents crashes caused by stack overflow.
In particular, fixes issue #601.

As an optimization, allocate a fixed sized stack buffer first,
which should be enough for "normal" uses.
When that stack overflows, switch to heap.

Also, store "ranges" on the stack, instead of the actual sexp's,
using the fact that sexp's of a single parent are continous in memory.

This patch doesn't remove recursion on the context saves
because it didn't seem like they overflow in practice.
But changing that is simple having the stack interface.
2020-05-15 20:11:50 +02:00
Alex Shinn
4be920986f
Merge pull request #639 from Donaim/638
Avoid undefined C macro behavior
2020-05-14 08:11:36 +08:00
Donaim
bd62a076c6 Avoid undefined C macro behavior
MacOS and clang compilers complain about undefined behavior
in C macro.
Rewrite macro to solve that.

Fixes issue #638
2020-05-13 22:23:17 +02:00
Alex Shinn
72e70bef88
Merge pull request #637 from Donaim/fix-c89-compilation
Fix c89 compilation and add test build option for it
2020-05-13 18:18:39 +09:00