Debian Patches
Status for guile-3.0/3.0.10+really3.0.10-6
Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
---|---|---|---|---|---|---|
0001-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch | Mark "mutex with owner not retained" threads test as unresolved. As per discussion with upstream, mark this test as unresolved since it may produce false negatives, depending on the behavior/timing of the garbage collector. |
Rob Browning <rlb@defaultvalue.org> | no | 2012-03-18 | ||
0002-Look-for-guile-procedures.txt-in-pkglibdir.patch | Look for guile-procedures.txt in pkglibdir Look for guile-procedures.txt in %guile-build-info's pkglibdir first since the content is not architecture independent. |
Rob Browning <rlb@defaultvalue.org> | yes | debian upstream | 2016-08-12 | |
0003-Disable-sandbox.test-1e6-alloc-loop-allocation-limit.patch | Disable sandbox.test "1e6 alloc loop" "allocation limit" test The test suite would eventually hang on sandbox.test when run in a "make -j5 check" loop. The last test printed to the log was the one before "1e6 alloc loop", and after commenting out that test, the loop doesn't appear to hang, so disable it for now. |
Rob Browning <rlb@defaultvalue.org> | no | 2018-02-20 | ||
0004-gc.test-after-gc-hook-mark-unresolved-on-failure-eve.patch | gc.test: after-gc-hook - mark unresolved on failure (everywhere) Previously this was done for just mips and mipsel, 59d9bcd468aab0d97d763595fd4e934044dc7590 "gc.test: after-gc-hook - mark unresolved on failure for mips(el)", and then fd4ba18bca1c6000fc0dd417a5b489e1ac60e0d9 "Fix gc.test "after-gc-hook gets called" failures" attempted to fix it upstream, but as of 2.2.6 it's failing again, this time on amd64, so just mark it as unresolved everywhere for now. |
Rob Browning <rlb@defaultvalue.org> | yes | debian upstream | 2019-09-01 | |
0005-Mark-test-out-of-memory-as-an-expected-failure-for-n.patch | Mark test-out-of-memory as an expected failure for now Since this test has been failing for a long time on various architectures, mark it as expected to fail for now so that we'll still run it and can see the results, but won't be blocked by it. There are known issues with the test upstream, and at least in some past cases it's been possible to reproduce the failure quickly by running test-suite/standalone/test-out-of-memory in a loop. |
Rob Browning <rlb@defaultvalue.org> | yes | debian upstream | 2018-02-20 | |
0006-numbers.test-disable-unresolved-mixed-type-division-.patch | numbers.test: disable unresolved "mixed type" division tests on i686 | Rob Browning <rlb@defaultvalue.org> | yes | debian upstream | 2020-09-12 | |
0007-Fix-32-bit-big-endian-builds-via-Oresolve-primitives.patch | Fix 32-bit big endian builds via -Oresolve-primitives -Ocps Specify -Oresolve-primitives -Ocps during bootstrapping builds to fix build failures on 32-bit big endian architectures. Thanks to John David Anglin for reporting the problem and investigating the problem, and to John Paul Adrian Glaubitz for helping devise the solution. |
Rob Browning <rlb@defaultvalue.org> | yes | debian upstream | 2018-02-20 | |
0008-test-hashing-support-32-bit.patch | test-hashing: support 32-bit * test-suite/standalone/test-hashing.c (test_hashing): add expected value for 32-bit architectures. |
Rob Browning <rlb@defaultvalue.org> | no | upstream, commit ad1f56675be58fbb7bfee6fab166ff5bf0b36a11 | 2024-07-01 | |
0009-More-thorough-lowering-of-lognot-to-CPS.patch | More thorough lowering of lognot to CPS * module/language/tree-il/compile-cps.scm (canonicalize): Lower to a logxor with -1. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit 7aa4cfa9ded582952e16235d8aa634ada22febf2 | 2024-08-13 | |
0010-Fix-intset-fold-right-on-transient-intsets.patch | Fix intset-fold-right on transient intsets * module/language/cps/intset.scm (make-intset-folder): intset-fold-right on a transient intset would dispatch to left fold after making the persistent set. Sadness! |
Andy Wingo <wingo@pobox.com> | no | upstream, commit d0790d766bedf08fb65231eff53f6c8044eb94f1 | 2024-08-15 | |
0011-Add-a-workaround-for-pre-3.0.10-incorrect-inlinable-.patch | Add a workaround for pre-3.0.10 incorrect inlinable exports * module/language/tree-il/peval.scm (peval) (inlinable-kwargs-bug-fixup): Before 3.0.10, the inlinable exports pass was incorrectly serializing functions with keyword arguments. This was fixed in 2c645571b351a0044911847025b666551a8e4fb5, but that meant that 3.0.10 compiling against 3.0.9 binaries could raise an exception at compile-time; whoops. Add a workaround so that 3.0.9 binaries still work. Fixes https://issues.guix.gnu.org/72936. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit 90e1205018f13c86355517c85db8cf82952c6e98 | 2024-09-23 | |
0012-Remove-needless-constraints-in-type-range-analysis.patch | Remove needless constraints in type/range analysis * module/language/cps/types.scm (ulogand, ulogand/immediate, ulogsub, ulogior, ulogxor): Where we have u64 inputs, there's no need to `restrict!`; the range will come from the definition. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit d6af34c0e085d785e89a64089de9779282874a2f | 2024-09-23 | |
0013-Narrow-parameter-of-logand-immediate-if-no-bits-used.patch | Narrow parameter of logand/immediate if no bits used * module/language/cps/specialize-numbers.scm (specialize-operations): Narrow ulogand/immediate param according to used bits. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit 5e6288c9304b60f1875a44808ee3858e3d6efc83 | 2024-09-23 | |
0014-Partially-revert-d579848cb5d65440af5afd9c89686286655.patch | Partially revert d579848cb5d65440af5afd9c8968628665554c22 * module/language/cps/specialize-numbers.scm (specialize-operations): Accept any operand to logand/immediate, provided the result is a u64 in the right range. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit b04071cc579e7b9d38d0c999e731bdd94b7f7a78 | 2024-09-24 | |
0015-Fix-fixpoint-needed-bits-computation-in-specialize-n.patch | Fix fixpoint needed-bits computation in specialize-numbers * module/language/cps/specialize-numbers.scm (next-power-of-two): Use integer-length. No change. (compute-significant-bits): Fix the fixpoint computation, which was failing to complete in some cases with loops. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit 0dab58fc2a6ac6a8354439749d598f8c24f57ddd | 2024-09-25 | |
0016-Fix-boxing-of-non-fixnum-negative-u64-values.patch | Fix boxing of non-fixnum negative u64 values * module/language/cps/specialize-numbers.scm (u64->fixnum/truncate): New helper. (specialize-operations): Fix specialized boxing of u64 values to truncate possibly-negative values, to avoid confusing CSE. Fixes https://debbugs.gnu.org/cgi/bugreport.cgi?bug=71891. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit e45b70dcded37eb77e71ec30445b12040b6bb1b7 | 2024-09-25 | |
0017-Tighten-up-range-inference-for-scm-u64-truncate.patch | Tighten up range inference for scm->u64/truncate * module/language/cps/types.scm (scm->u64/truncate): Better range analysis. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit 30c3849092b17a56b9b74dd23da121afc5076e08 | 2024-09-25 | |
0018-Run-sigbits-fixpoint-based-on-use-def-graph-not-cfg.patch | Run sigbits fixpoint based on use/def graph, not cfg * module/language/cps/specialize-numbers.scm (sigbits-ref): New helper. (invert-graph*): New helper. (compute-significant-bits): When visiting a term changes computed needed-bits for one of its definitions, we need to revisit the variables that contributed to its result (the uses), because they might need more bits as well. Previously we were doing this by enqueueing predecessors to the term, which worked if the uses were defined in predecessors, or if all defining terms were already in the worklist, which is the case without loops. But with loops, when revisiting a term, you could see that it causes sigbits to change, enqueue its predecessors, but then the predecessors don't change anything and the fixpoint stops before reaching the definitions of the variables we need. So instead we compute the use-def graph and enqueue defs directly. |
Andy Wingo <wingo@pobox.com> | no | upstream, commit aff9ac968840e9c86719fb613bd2ed3c39b9905c | 2024-09-26 | |
0019-Compile-with-fexcess-precision-standard-for-i-3456-8.patch | Compile with -fexcess-precision=standard for i[3456]86 when we can * configure.ac: when -fexcess-precision=standard is available and we're building for i[3456]86, use it. This fixes floating point precision problems caused by x87 (80-bit) floating point, and detected by numbers.test. |
Rob Browning <rlb@defaultvalue.org> | no | upstream, commit 9b1effb58579821ffa9357df808d5264e45fb30c | 2024-10-05 | |
0020-Eight-byte-align-statically-allocated-stringbufs.patch | Eight byte align statically allocated stringbufs Previously they were unaligned, unlike their parent strings, and so could end up with the wrong pointer tag. Observed on i686-linux-gnu, where they ended up tagged as immediates (SCM_IMP()), causing failures in TYP7 related checks. * libguile/strings.h (SCM_IMMUTABLE_STRINGBUF): align resulting buffer via SCM_ALIGNED(8). |
Rob Browning <rlb@defaultvalue.org> | no | upstream, commit 76afb429ee7a8a4c9eddb20bf29a2246192f8a28 | 2024-11-28 | |
0021-Mark-inter-protocol-attack-test-unresolved-if-write-.patch | Mark inter-protocol attack test unresolved if write-request fails This happens with some frequency during parallel test runs, and the same (apparent) failure can eventually be triggered by repeated moreutils parallel invocations like this in a built tree: parallel -j 3 ./check-guile -- \ 00repl-server.test 00repl-server.test 00repl-server.test |
Rob Browning <rlb@defaultvalue.org> | no | 2025-01-14 | ||
0022-tests-Skip-hole-related-port-tests-on-Darwin.patch | tests: Skip hole-related port tests on Darwin. Hole are itself a file-system specific feature and they are not mandated. While APFS does support sparse files, they do not behave like on Linux. I did not discover exact rules, but the file needs to be large (100s of kB at least) and the holes are not aligned as the test code expects. So just disable them. * test-suite/tests/ports.test (skip-on-darwin): New procedure. ("size of sparse file", "SEEK_DATA while on data") ("SEEK_DATA while in hole", "SEEK_HOLE while in hole"): Skip on Darwin. |
Tomas Volf <~@wolfsden.cz> | no | upstream, commit 21e3e1c420ace116961ecdf0001c289c28fa73c6 | 2024-08-10 | |
0023-Skip-ports.test-seek-tests-unless-filesystem-looks-s.patch | Skip ports.test seek tests unless filesystem looks suitable For now, only test on filesystems that we know have the expected semantics, i.e. btrfs, ext4, and xfs. |
Rob Browning <rlb@defaultvalue.org> | no | 2025-01-15 | ||
0024-fport_print-handle-ttyname-ENODEV.patch | fport_print: handle ttyname ENODEV In some situations, ttyname may return ENODEV even though isatty is true. From ttyname(3): A process that keeps a file descriptor that refers to a pts(4) device open when switching to another mount namespace that uses a different /dev/ptmx instance may still accidentally find that a device path of the same name for that file descriptor exists. However, this device path refers to a different device and thus can't be used to access the device that the file descriptor refers to. Calling ttyname() or ttyname_r() on the file descriptor in the new mount namespace will cause these functions to return NULL and set errno to ENODEV. Observed in a Debian riscv64 porterbox schroot. When ttyname fails with ENODEV, just include the file descriptor integer value instead. Call ttyname() rather than scm_ttyname() to avoid some extra work and having to catch the ENODEV. * libguile/fports/c: include the integer fd when ttyname() fails with ENODEV. |
Rob Browning <rlb@defaultvalue.org> | no | 2025-01-17 | ||
0025-build-Fix-in-tree-cross-compilation-build.patch | build: Fix in-tree cross-compilation build. Commit 57a889b7282dab303c4cdc49cccbbe22f961bd1c fixed out-of-tree cross-compilation builds but broke in-tree cross-compilation builds. With this change, we should have both. * libguile/Makefile.am (gen-scmconfig.$(OBJEXT)): Use ‘-iquote’ instead of ‘-I’. |
=?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org> | no | upstream, commit c117f8edc471d3362043d88959d73c6a37e7e1e9) | 2024-07-17 | |
0026-fluids.test-be-more-determined-when-checking-fluid-g.patch | fluids.test: be more determined when checking fluid gc The "fluids are GC'd" test failed on s390x. Investigation revealed that adding a (sleep 0) allowed the test to succeed. Rework the test to try more than once (up to 100 times), with a (sleep 0) between attempts. The investigation also revealed that a (usleep n) for various values of n, including 0 and 1000000 never worked. Further testing found that changing usleep to convert the interval as a uint (as sleep does) instead of a ulong allowed the test to succeed. * test-suite/tests/fluids.test: Try up to 100 times, sleeping between attempts. |
Rob Browning <rlb@defaultvalue.org> | no | upstream, commit 876d9343a5bca9bbb44a3787bc30881bedaaca17 | 2025-09-12 |
All known versions for source package 'guile-3.0'
- 3.0.10+really3.0.10-6 (sid, forky)
- 3.0.10+really3.0.10-4 (trixie)
- 3.0.8-2 (bookworm)