Update to latest git snapshot
- Drop one upstreamed patch to fix undefined behavior
This commit is contained in:
parent
28d75acd55
commit
2f58da3a26
3 changed files with 13 additions and 58 deletions
|
|
@ -1,46 +0,0 @@
|
|||
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118779
|
||||
|
||||
--- src/package.d.orig 2024-12-28 00:47:59.000000000 -0700
|
||||
+++ src/package.d 2025-02-07 12:00:00.646094825 -0700
|
||||
@@ -188,12 +188,12 @@ local maygc object rehash_symtab (object
|
||||
first process the symbols, that sit in lists
|
||||
(maybe Conses become free): */
|
||||
{
|
||||
- var gcv_object_t* offset = 0; /* offset = sizeof(gcv_object_t)*index */
|
||||
+ var aint offset = 0; /* offset = sizeof(gcv_object_t)*index */
|
||||
var uintC count = oldsize;
|
||||
do {
|
||||
var object oldentry = /* entry with number index in oldtable */
|
||||
*(gcv_object_t*)(pointerplus(&TheSvector(STACK_2)->data[0],
|
||||
- (aint)offset));
|
||||
+ offset));
|
||||
if (consp(oldentry)) /* this time process only non-empty symbol-lists */
|
||||
do {
|
||||
pushSTACK(Cdr(oldentry)); /* save rest-list */
|
||||
@@ -205,22 +205,22 @@ local maygc object rehash_symtab (object
|
||||
newinsert(Car(oldentry),newsize);
|
||||
oldentry = popSTACK(); /* rest-list */
|
||||
} while (consp(oldentry));
|
||||
- offset++;
|
||||
+ offset += sizeof(gcv_object_t);
|
||||
} while (--count);
|
||||
}
|
||||
{ /* then process symbols, that sit there collision-free: */
|
||||
- var gcv_object_t* offset = 0; /* offset = sizeof(gcv_object_t)*index */
|
||||
+ var aint offset = 0; /* offset = sizeof(gcv_object_t)*index */
|
||||
var uintC count;
|
||||
dotimespC(count,oldsize, {
|
||||
var object oldentry = /* entry with number index in oldtable */
|
||||
*(gcv_object_t*)(pointerplus(&TheSvector(STACK_2)->data[0],
|
||||
- (aint)offset));
|
||||
+ offset));
|
||||
if (!listp(oldentry)) { /* this time process only symbols /= NIL */
|
||||
pushSTACK(oldentry); /* dummy, so that the stack is fine */
|
||||
newinsert(oldentry,newsize); /* enter into the new table */
|
||||
skipSTACK(1);
|
||||
}
|
||||
- offset++;
|
||||
+ offset += sizeof(gcv_object_t);
|
||||
});
|
||||
}
|
||||
/* stack layout: tab, oldtable, free-conses, newtable. */
|
||||
23
clisp.spec
23
clisp.spec
|
|
@ -1,7 +1,7 @@
|
|||
# Upstream has not made a new release since 2010
|
||||
%global srcname clisp
|
||||
%global commit c3ec11bab87cfdbeba01523ed88ac2a16b22304d
|
||||
%global date 20241228
|
||||
%global commit f66220939ea7d36fd085384afa4a0ec44597d499
|
||||
%global date 20250504
|
||||
%global forgeurl https://gitlab.com/gnu-clisp/clisp
|
||||
|
||||
# There is a plus on the end for unreleased versions, not for released versions
|
||||
|
|
@ -24,7 +24,7 @@ Version: 2.49.95
|
|||
# - src/socket.d and modules/clx/mit-clx/doc.lisp are HPND
|
||||
# - src/xthread.d and modules/asdf/asdf.lisp are X11
|
||||
License: GPL-2.0-or-later AND (GPL-2.0-or-later OR GFDL-1.2-or-later) AND LGPL-2.1-or-later AND HPND AND X11
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
URL: http://www.clisp.org/
|
||||
VCS: git:%{forgeurl}.git
|
||||
Source0: %{forgesource}
|
||||
|
|
@ -49,20 +49,17 @@ Patch4: %{name}-iconv-close.patch
|
|||
# Fix a memory leak in encoding.d
|
||||
# https://gitlab.com/gnu-clisp/clisp/-/merge_requests/11
|
||||
Patch5: %{name}-encoding-leak.patch
|
||||
# Fix undefined behavior in rehash_symtab
|
||||
# https://gitlab.com/gnu-clisp/clisp/-/merge_requests/12
|
||||
Patch6: %{name}-undefined-behavior.patch
|
||||
# Fix undefined behavior in SORT
|
||||
Patch7: %{name}-undefined-behavior-sort.patch
|
||||
Patch6: %{name}-undefined-behavior-sort.patch
|
||||
# Fix undefined behavior in interpret_bytecode_
|
||||
Patch8: %{name}-undefined-behavior-eval.patch
|
||||
Patch7: %{name}-undefined-behavior-eval.patch
|
||||
# Fix undefined behavior in pr_array
|
||||
Patch9: %{name}-undefined-behavior-io.patch
|
||||
Patch8: %{name}-undefined-behavior-io.patch
|
||||
# Fix misaligned memory accesses on ppc64le
|
||||
Patch10: %{name}-ppc64le-alignment.patch
|
||||
Patch9: %{name}-ppc64le-alignment.patch
|
||||
# Fix some mismatched readline function declarations
|
||||
# https://gitlab.com/gnu-clisp/clisp/-/merge_requests/13
|
||||
Patch11: %{name}-readline.patch
|
||||
Patch10: %{name}-readline.patch
|
||||
|
||||
# Work around a problem inlining a function on ppc64le
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=2049371
|
||||
|
|
@ -463,6 +460,10 @@ make -C build base-mod-check
|
|||
|
||||
|
||||
%changelog
|
||||
* Mon Jun 02 2025 Jerry James <loganjerry@gmail.com> - 2.49.95-4
|
||||
- Update to latest git snapshot
|
||||
- Drop one upstreamed patch to fix undefined behavior
|
||||
|
||||
* Fri Feb 14 2025 Jerry James <loganjerry@gmail.com> - 2.49.95-3
|
||||
- Add patches to fix more undefined behavior
|
||||
- Fix misaligned memory accesses on ppc64le
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (clisp-c3ec11bab87cfdbeba01523ed88ac2a16b22304d.tar.bz2) = f1f90de3eec144fd2d7bc9a3b482952c4c187f7ec590c41ce20447b4662961ae35290b260fa91d7399f9a4d1806ec7310ee90a77ead63a9d0f529a8627d2fa17
|
||||
SHA512 (clisp-f66220939ea7d36fd085384afa4a0ec44597d499.tar.bz2) = 16d6ccba500d60fe36c20b5bd1d6c9403567996020cef406e42813a302a86d94dc0d5e36aae434b5b846d39ec37d6db2b50565a69d24291b973724bcc0874bd0
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue