rpms/umb-scheme/FC-4 umb-scheme-3.2-define.patch, NONE, 1.1 umb-scheme-3.2-forwarding.patch, NONE, 1.1 umb-scheme-3.2.spec, 1.17, 1.18
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Fri Jan 20 14:51:21 UTC 2006
- Previous message (by thread): rpms/gnome-panel/devel gnome-panel-2.13.5-switch-user.patch, NONE, 1.1 gnome-panel.spec, 1.104, 1.105
- Next message (by thread): rpms/texinfo/FC-4 texi2pdf.man, NONE, 1.1 texinfo-4.8-zlib.patch, NONE, 1.1 texinfo.spec, 1.26, 1.27 texinfo-4.3-zlib.patch, 1.3, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: mlichvar
Update of /cvs/dist/rpms/umb-scheme/FC-4
In directory cvs.devel.redhat.com:/tmp/cvs-serv26783
Modified Files:
umb-scheme-3.2.spec
Added Files:
umb-scheme-3.2-define.patch umb-scheme-3.2-forwarding.patch
Log Message:
- fix crash when "(define name expr)" causes garbage collection
- fix forwarding objects, assumption that stack and heap are both in the same
half of memory space is changed to more reasonable assumption that objects
are at least two byte aligned; that should make umb-scheme usable again
(#167017)
umb-scheme-3.2-define.patch:
compiler.c | 6 +-----
1 files changed, 1 insertion(+), 5 deletions(-)
--- NEW FILE umb-scheme-3.2-define.patch ---
--- scheme-3.2/compiler.c.orig 2006-01-20 15:11:27.000000000 +0100
+++ scheme-3.2/compiler.c 2006-01-20 15:13:33.000000000 +0100
@@ -147,15 +147,11 @@
{
/* Basic form: (define name expr) */
- Object expr ;
-
if ( Length( form ) != 3 )
{
Display_Error("Bad syntax to define in: ", form);
}
- expr = Third( form );
-
if ( !Is_Symbol( name ) )
{
Display_Error("Bad syntax to define in: ", form);
@@ -191,7 +187,7 @@
Push( Value_Register );
- Push( expr );
+ Push( Third( Top( 2 ) ) ); /* expr */
Compile_Object( Top( 1 ));
Push( Value_Register );
umb-scheme-3.2-forwarding.patch:
architecture.h | 13 ++++---------
portable.h | 23 +----------------------
2 files changed, 5 insertions(+), 31 deletions(-)
--- NEW FILE umb-scheme-3.2-forwarding.patch ---
--- scheme-3.2/portable.h.orig 2006-01-19 10:58:00.000000000 +0100
+++ scheme-3.2/portable.h 2006-01-19 10:58:28.000000000 +0100
@@ -57,28 +57,7 @@
#define ALIGNMENT 8
-/* Processors (eg the Alpha) having 64-bit addresses require special casting
- in the architecture module. */
-
-#if defined(__alpha__)
-typedef long int Integral_Pointer;
-#else
-typedef int Integral_Pointer;
-#endif
-
-
-/* NEGATIVE_ADDRESSES is defined to be 1 iff memory addresses have a 1 in the
- highest bit; otherwise it is defined to be 0. This is the usual case. */
-
-/* IF YOUR MACHINE HAS ADDRESSES WITH 1 IN THE HIGH-ORDER BIT THEN
- CHANGE THIS: */
-
-#ifdef u3b2
-#define NEGATIVE_ADDRESSES 1
-#else
-#define NEGATIVE_ADDRESSES 0
-#endif
-
+typedef unsigned long Integral_Pointer;
/* The following declarations ought not to be necessary for C environments
that support the ANSI C Standard. */
--- scheme-3.2/architecture.h.orig 1996-01-21 23:15:48.000000000 +0100
+++ scheme-3.2/architecture.h 2006-01-19 10:58:22.000000000 +0100
@@ -95,16 +95,11 @@
Import Object Move_Object();
Import void Relocate();
-#if NEGATIVE_ADDRESSES
- /* NEGATIVE_ADDRESSES defined in portable.h */
-#define Is_Forwarded(o) (((Integral_Pointer) Get_Type(o)) > 0)
-#else
-#define Is_Forwarded(o) (((Integral_Pointer) Get_Type(o)) < 0)
-#endif
-
-#define Get_Forwarding_Address(o) ((Object) (-((Integral_Pointer) Get_Type(o))))
+#define Is_Forwarded(o) (((Integral_Pointer) Get_Type(o)) & 1)
+#define Get_Forwarding_Address(o) \
+ ((Object) (((Integral_Pointer) Get_Type(o)) & ~1))
#define Set_Forwarding_Address(old,new) \
- Get_Type(old) = (Scheme_Type) (-((Integral_Pointer)(new)))
+ Get_Type(old) = (Scheme_Type) ((Integral_Pointer)(new) | 1)
/* General */
Import Object Copy_Object();
Index: umb-scheme-3.2.spec
===================================================================
RCS file: /cvs/dist/rpms/umb-scheme/FC-4/umb-scheme-3.2.spec,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- umb-scheme-3.2.spec 8 Sep 2005 07:57:29 -0000 1.17
+++ umb-scheme-3.2.spec 20 Jan 2006 14:51:19 -0000 1.18
@@ -1,7 +1,7 @@
Summary: An implementation of the Scheme programming language.
Name: umb-scheme
Version: 3.2
-Release: 39.fc4
+Release: 39.fc4.1
License: GPL SLIB
Group: Development/Languages
Source: ftp://ftp.cs.umb.edu/pub/scheme/umb-scheme-3.2.tar.bz2
@@ -15,6 +15,8 @@
Patch5: umb-scheme-3.2-slib2c7.patch
Patch6: umb-scheme-3.2-share.patch
Patch7: umb-scheme-3.2-vi.patch
+Patch8: umb-scheme-3.2-forwarding.patch
+Patch9: umb-scheme-3.2-define.patch
BuildRoot: %{_tmppath}/umb-scheme-root
Prereq: /sbin/install-info
BuildPrereq: texinfo
@@ -38,6 +40,8 @@
%patch5 -p1 -b .slib2c7
%patch6 -p1 -b .sharepatch
%patch7 -p1 -b .vipatch
+%patch8 -p1 -b .forwardingpatch
+%patch9 -p1 -b .definepatch
%build
make CFLAGS="$RPM_OPT_FLAGS"
@@ -85,6 +89,13 @@
%{_infodir}/umb-scheme.info.gz
%changelog
+* Fri Jan 20 2006 Miroslav Lichvar <mlichvar at redhat.com> 3.2-39.fc4.1
+- fix crash when "(define name expr)" causes garbage collection
+- fix forwarding objects, assumption that stack and heap are both in the same
+ half of memory space is changed to more reasonable assumption that objects
+ are at least two byte aligned; that should make umb-scheme usable again
+ (#167017)
+
* Thu Sep 8 2005 Jindrich Novy <jnovy at redhat.com> 3.2-39.fc4
- don't install slib.info to avoid conflict with slib package
- Previous message (by thread): rpms/gnome-panel/devel gnome-panel-2.13.5-switch-user.patch, NONE, 1.1 gnome-panel.spec, 1.104, 1.105
- Next message (by thread): rpms/texinfo/FC-4 texi2pdf.man, NONE, 1.1 texinfo-4.8-zlib.patch, NONE, 1.1 texinfo.spec, 1.26, 1.27 texinfo-4.3-zlib.patch, 1.3, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-cvs-commits
mailing list