1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
Description: Upstream changes by gniibe to fix FTBFS on alpha and hppa
Note that files of *-coll.c are generated files,
we should change original too.
On hppa, it failed with 0xdeadbeef or something like that:
Program received signal SIGSEGV, Segmentation fault.
0x00013f0c in __canonicalize_funcptr_for_compare ()
Author: NIIBE Yutaka <gniibe@fsij.org>
Last-Update: 2020-08-25
Forwarded: https://github.com/uim/sigscheme/issues/10
Index: sigscheme-0.8.5/test-c/test-storage-coll.c
===================================================================
--- sigscheme-0.8.5.orig/test-c/test-storage-coll.c 2011-02-15 16:55:00.000000000 +0900
+++ sigscheme-0.8.5/test-c/test-storage-coll.c 2011-02-15 16:55:02.000000000 +0900
@@ -231,8 +231,8 @@
TST_CASE(tst_6, "symbol")
{
ScmObj obj;
- char *p = scm_strdup("abcdefghijklmnopqrstuv");
- p = (char*)(((intptr_t)p + 7)& (-8));
+ char *p = "abcdefghijklmnopqrstuv";
+ p = (char*)(((intptr_t)p + sizeof(ScmCell)-1)&(-sizeof(ScmCell)));
#define SYMBOL_TST(tst, nam, val) \
tst(obj, SYMBOL, \
@@ -341,10 +341,10 @@
CFUNC, FPTR, fun)
typedef ScmFuncType FPTR;
- FUNC_TST(TST_INIT2, SCM_SYNTAX_VARIADIC_1, (ScmFuncType)0xdeadbeef);
+ FUNC_TST(TST_INIT2, SCM_SYNTAX_VARIADIC_1, (ScmFuncType)0);
FUNC_TST(TST_SET2, SCM_PROCEDURE_FIXED_4, (ScmFuncType)0);
#if (SIZEOF_SCMOBJ == SIZEOF_INT64_T)
- FUNC_TST(TST_INIT2, SCM_SYNTAX_VARIADIC_1, (ScmFuncType)0xdeadbeeffeed);
+ FUNC_TST(TST_INIT2, SCM_SYNTAX_VARIADIC_1, (ScmFuncType)0);
#endif
}
@@ -409,12 +409,12 @@
VALUE, FPTR, p)
typedef ScmCFunc FPTR;
- CFPTR_TST(TST_INIT1, (ScmCFunc)0xdeadbeef);
- CFPTR_TST(TST_SET1, (ScmCFunc)0xbaddeed);
+ CFPTR_TST(TST_INIT1, (ScmCFunc)0);
+ CFPTR_TST(TST_SET1, (ScmCFunc)0);
#if (SIZEOF_SCMOBJ == SIZEOF_INT64_T)
/* both MSB and LSB are set */
- CFPTR_TST(TST_INIT1, (ScmCFunc)0xadeadbeeffedbeef);
- CFPTR_TST(TST_SET1, (ScmCFunc)0xbaddeedbeddad);
+ CFPTR_TST(TST_INIT1, (ScmCFunc)0);
+ CFPTR_TST(TST_SET1, (ScmCFunc)0);
#endif
}
#endif /* use sscm extension mechanism */
|