[PATCH] doc: Document SRFI 64.

2023-11-17 Thread Maxim Cournoyer
This is an import of the 'Abstract', 'Rationale', and 'Specification' sections from the upstream specification text, with some manual adjustments. * doc/ref/srfi-modules.texi (SRFI 64): New subsection. --- doc/ref/srfi-modules.texi | 840 +- 1 file changed, 83

[PATCH v2] doc: Document SRFI 64.

2023-11-17 Thread Maxim Cournoyer
This is an import of the 'Abstract', 'Rationale', and 'Specification' sections from the upstream specification text, with some manual adjustment. * doc/ref/srfi-modules.texi (SRFI 64): New subsection. --- Changes in v2: - Fix the category of many definitions doc/ref/srfi-modules.texi | 829 ++

[PATCH v3 3/6] ice-9: Fix 'include' when used in compilation contexts.

2023-11-17 Thread Maxim Cournoyer
Fix bug #66046. Introduce a 'compilation-source-file-name' fluid that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm

[PATCH v3 6/6] module: Add srfi-151.

2023-11-17 Thread Maxim Cournoyer
* module/srfi/srfi-151.scm * module/srfi/srfi-151/bitwise-33.scm * module/srfi/srfi-151/bitwise-60.scm * module/srfi/srfi-151/bitwise-other.scm * test-suite/tests/srfi-151.test * test-suite/tests/srfi-151-test.scm: New files. * am/bootstrap.am (SOURCES): Register srfi-151.scm. (NOCOMP_SOURCES): Reg

[PATCH v3 2/6] tests: Add new compile-file tests.

2023-11-17 Thread Maxim Cournoyer
Add a test for bug #66046. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file:

[PATCH v3 4/6] module: Add srfi-128.

2023-11-17 Thread Maxim Cournoyer
>From upstream commit 62504e3b5b01615297cf65c33ca76a474bd61dd3. * module/srfi/srfi-128.scm * module/srfi/srfi-128/128.body1.scm * module/srfi/srfi-128/128.body2.scm * test-suite/tests/srfi-128-test.scm * test-suite/tests/srfi-128.test: New files. * am/bootstrap.am (SOURCES): Register srfi-128.scm.

[PATCH v3 1/6] module: Add srfi-126.

2023-11-17 Thread Maxim Cournoyer
This is not original work: it merely integrates and formats the work of Taylan Ulrich Bayırlı/Kammer into Guile, with a few adjustments to avoid warnings/fix missing imports. Thank you! * module/srfi/srfi-126.scm: New file. * test-suite/tests/srfi-126.test: New file. * test-suite/tests/srfi-126-t

[PATCH v3 5/6] module: Add srfi-125.

2023-11-17 Thread Maxim Cournoyer
* module/srfi/srfi-125.scm * module/srfi/srfi-125/hash-table.scm * test-suite/tests/srfi-125-test.scm * test-suite/tests/srfi-125.test: New files. * am/bootstrap.am (SOURCES): Register srfi-125.scm. (NOCOMP_SOURCES): Register hash-table.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.t