Summary: | Assertion failure in sigscheme/src/storage-gc.c on amd64 linux | ||
---|---|---|---|
Product: | UIM | Reporter: | Jae-hyeon Park <jhyeon> |
Component: | libuim: Scheme interpreter | Assignee: | uim-bugs |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | ||
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Jae-hyeon Park
2010-03-08 03:07:48 UTC
(In reply to comment #0) > Giving the --enable-debug option to configure causes an assertion failure in > lt-uim-module-manager during compilation. The workarounds in the report of > #16477 do not work, i.e. assertion fails [...] > lt-uim-module-manager: ../sigscheme/src/storage-gc.c:640: within_heapp: > Assertion `!((scm_uintobj_t)(((obj) & ~((((scm_uintobj_t)1 << ((0) + (1))) - > ((scm_uintobj_t)1 << (0))) | (((scm_uintobj_t)1 << (((1 + 0)) + (2))) - > ((scm_uintobj_t)1 << ((1 + 0))))))) % sizeof(ScmCell))' failed. Also confirmed with Mac OS X 10.6 (x86_64) and Fedora 12 (x86_64). Although I don't know the GC code internal of sigscheme well, I don't think it requires to use SCM_UNTAG_PTR() in storage-gc.c:640, because it checks the alignment later in line 649. So I suggest using ptr = (ScmCell *)SCM_DROP_TAG(obj) at the line. Fixed in trunk (r6237) and sigscheme-0.8 (r6238). |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.